星期六, 九月 08, 2007

贪婪匹配与非贪婪匹配

这个在正则表达式中是很有用的,python的re模块的正则表达式中,
?,*,+ 缺省都是贪婪匹配,
在它们后面加一个?就可以变成非贪婪匹配,很方便啊, 也就是
??,*?,+?

例子送上:
>>> re.findall("<big>.+?</big>", "<big>1</big><big>2</big>3")
['<big>1</big>', '<big>2</big>']
>>> re.findall("<big>.+</big>", "<big>1</big><big>2</big>3")
['<big>1</big><big>2</big>']

 

0 Comments:

发表评论

<< Home