re.search('(?ix)(?<=l)ike.*(?=s)','as Like as').group()
# 结果 ike a
# 说明
# 1. (?..) 匹配模式(就写有用的)
# >i 使匹配对大小写不敏感
# >x 正则中串中的空白符被忽略
# 比如 (?x)li k e 可以匹配 like
# 2. (?<=l) 前驱匹配但不消费,
# 比如上面 (?<=l)(.*) 可以匹配 l(ike..)
# 3. (?=s) 后驱匹配但不消费
# 比如上面 (?<=l)(.*)(?=s) 匹配 l(ike a)s
# 结果 ike a
# 说明
# 1. (?..) 匹配模式(就写有用的)
# >i 使匹配对大小写不敏感
# >x 正则中串中的空白符被忽略
# 比如 (?x)li k e 可以匹配 like
# 2. (?<=l) 前驱匹配但不消费,
# 比如上面 (?<=l)(.*) 可以匹配 l(ike..)
# 3. (?=s) 后驱匹配但不消费
# 比如上面 (?<=l)(.*)(?=s) 匹配 l(ike a)s
re.search(
'
(?ix)(as)?(.*)(?(1)as)
'
,
'
As like as
'
).group(
2
)
# 结果 ' like '
# (as)? 条件
# (?(1)as) 如果条件1 为真 ,再匹配as
#
# 给 条件取名 (?P<name>....) (?(name)....)
#re.search('(?ix)(?P<rid>as)(.*)(?(rid)as)','As Like as').group(2)
# 结果 Like
详细参考 python >>> help(re)
# 结果 ' like '
# (as)? 条件
# (?(1)as) 如果条件1 为真 ,再匹配as
#
# 给 条件取名 (?P<name>....) (?(name)....)
#re.search('(?ix)(?P<rid>as)(.*)(?(rid)as)','As Like as').group(2)
# 结果 Like
或 http://www.python.org/doc/2.5/lib/re-syntax.html