贪婪匹配与非贪婪匹配
这个在正则表达式中是很有用的,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>']
?,*,+ 缺省都是贪婪匹配,
在它们后面加一个?就可以变成非贪婪匹配,很方便啊, 也就是
??,*?,+?
例子送上:
>>> 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