查詢所有非重疊匹配
re.findall(r"[0-9]{2,3}", "some 1 text 12 is 945 here 4445588899")
# Out: ['12', '945', '444', '558', '889']
注意 [0-9]{2,3}
之前的 r
告訴 python 按原樣解釋字串; 作為原始字串。
你也可以使用與 re.findall()
相同的 re.finditer()
,但返回帶有 SRE_Match
物件的迭代器而不是字串列表:
results = re.finditer(r"([0-9]{2,3})", "some 1 text 12 is 945 here 4445588899")
print(results)
# Out: <callable-iterator object at 0x105245890>
for result in results:
print(result.group(0))
''' Out:
12
945
444
558
889
'''