贪婪与非贪婪

贪婪:默认情况下,正则表达式的结果满足条件时,他不会终止,而是继续往下找,知道不符合条件为止,这就是贪婪匹配

比如说上节的例子

import re

a = 'python 1111java678php'

r = re.findall('[a-z]{3,6}',a) 
print(r) # ['python', 'java', 'php']

其实匹配到 pyt已经满足条件了,但是由于贪婪模式还会继续找,直至不符合条件为止

非贪婪:: 在数量词的后面加上一个?

import re

a = 'python 1111java678php'

r = re.findall('[a-z]{3,6}?',a) 
print(r) # ['pyt', 'hon', 'jav', 'php']

results matching ""

    No results matching ""