3.2.1 正則表達式的語法(1)
阿新 • • 發佈:2018-03-21
dal body tracking 位置 data- edi -s 宋體 才會
(?
...)
這個語法規則是前面的擴展。主要在問號位置能夠替換為特定的字符。
樣例:
print(‘(?...)‘)
m?=?re.findall(r‘(a...)‘,?r‘abcdefaghijk‘)
if?m:
????print(m)?
輸出結果例如以下:
(?...)
[‘abcd‘,?‘aghi‘]
(?
#...)
括號內容凝視掉,不起作用。在正則表達式分析時。跳過這些規則。
樣例:
print(‘(?#a)‘)
m?=?re.findall(u‘(?#a)i‘,?u‘aiLmsux?aaaadefagaiLmsuxhijk‘)
if?m:
????print(m)??
輸出結果例如以下:
(?
#a)
[‘i‘,?‘i‘,?‘i‘]
?
(?=...)
向前提前識別模式,當向前面字符符合等號中的字符時,就覺得匹配了,但這些字符不跳過。
比方Isaac(?
=Asimov),在Isaac字符後面碰到Asimov字符才會把這個Isaac識別出來,但Asimov不會跳過去。
樣例:
import?re
?
?
print(‘Isaac(?=Asimov)‘)
m?=?re.findall(u‘Isaac(?=Asimov)‘,?u‘abcdIsaacAsimovttttt‘)
if?m:
????print(m)
輸出結果例如以下:
Isaac(?=Asimov)
[‘Isaac‘]
蔡軍生 QQ:9073204 深圳
3.2.1 正則表達式的語法(1)