1. 程式人生 > >正則表示式之:.*?

正則表示式之:.*?

s = ‘abababababab’

pattern = re.compile(r'a.*b')

那麼檢索到的字串為‘abababababab’,該方法為貪婪匹配,找最長的

pattern = re.compile(r'a.*?b')

加了問號之後預設找最短的

輸出就是6個'ab'

# coding=utf-8
import re

s = 'abababababab'
pattern = re.compile(r'a.*b')
print(pattern.findall(s))
pattern = re.compile(r'a.*?b')
print(pattern.findall(s))
['abababababab']
['ab', 'ab', 'ab', 'ab', 'ab', 'ab']