匹配项(pattern):
1、 (?=…) —> 如果匹配……匹配next,但不使用任何字符串。这称为前向断言。
eg: >>> r = re.search('def(?=abc)','defabc')
>>> r.group()
'def'
/* 注: 这个也是条件匹配只不过条件紧挨着要匹配字符串的后面!
2、(?!..) —> 如果匹配……不匹配。这是一个否定的前向断言。
eg: >>> r = re.search('def(?!abc)','defacc')
>>> r.group()
'def'
2、(pattern_1)?(pattern_2)?(?(pattern_name(1、2……))yes|no) —> 例如表示如果pattern_name=pattern_1 则当pattern_1在子字符串
出现时则(?(pattern_name)yes|no)去查找字符串后面出现的yes,
否则则去查找字符串后面出现的no
eg: >>> re.search(<