RE

  RE is the abbreviation of 'Regular Expressions'.

@1:

+ 一个或多个,匹配1或者多次前面的子式,例如ab+匹配a接大于0个b,所以不能仅匹配a

. 匹配任意一个(不能为0个,也不能为多个)字符(行结束符除外),如cabcd中ab.可以匹配abc

? 零个或一个,匹配0或者1次前面的子式,例如ab?匹配a或者ab

* 零个或多个

*?,*?,??是贪婪的,最大化的匹配,例如,要匹配<h1>abdd<\h1>中的<h1>,当使用正则表达式为<.*>时匹配到结果是<h1>abdd<\h1>,加上?后可以使匹配最小化。<.*?>可以匹配<h1>

{m}匹配将子式重复m次后的字符串。例如:a{3}匹配aaa,而不能匹配其它次数个a。

{m,n}匹配m到n次前面的子式。A{3,}b匹配AAAb,或者匹配一百次a一个b。

{m,n}?匹配最小化模式,A{3,5}b对AAAAAAb,匹配为AAAb。

 

在很多的RE中我们都会看到 .*,.*可以匹配零个或多个字符, .*相当于[^\n]或[^\r\n]

 @2:

 

Reference:

正则表达式模块re : http://www.kaifazhe.com/python_school/389639.html

学习正则表达式:"Introducing Regular Expressions" by Michael Fitzgerald(O'Reilly). 

posted @ 2014-03-21 15:11  XiaoweiLiu  阅读(248)  评论(0编辑  收藏  举报