python 正则 (简约但不简单的demo)

python 正则 (简约但不简单的demo)


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


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)
http://www.python.org/doc/2.5/lib/re-syntax.html

整理 www.blogjava.net/Good-Game

你可能感兴趣的:(python 正则 (简约但不简单的demo))