您好,登錄后才能下訂單哦!
元字符之. ^ $ * + ? { }
.匹配是:如果匹配一個就寫一個點,如果匹配多個字,就寫幾個點字
>>> a = re.findall('b...dd','bsssdd')
>>> print(a)
['bsssdd']
如:
> a = re.findall('b..dd','bsssdd')
>>> print(a)
[]
解釋:因為兩個點,需要匹配的中間有三個導致不能匹配
^表達式:
>>> re.findall('^a..s','abcsassss')
['abcs']
>>> re.findall('a..s','abcsassss')
['abcs', 'asss']
>>> re.findall('^a..s','abcsassss')
['abcs']
>>>
如果在逗號里面支匹配一個,如果^在逗號外面是最大匹配內容。只有能滿足的都匹配出來。
$匹配是從最后開始匹配,如果么有提示空,如果有就匹配一個:
>>> re.findall('a.b$','abbdddddabb')
['abb']
>>> re.findall('$a.b','abbdddddabb')
[]
*匹配:
表示:如果匹配成功后,最后一個字符會最大去匹配內容:
>>> re.findall('abc*','sabcccc')
['abcccc']
>>> re.findall('abc*','sabcccgewec')
['abccc']
>>>
?表達式:如果匹配成功就停止匹配;
>>> re.findall('abc?','abccc')
['abc']
>>> re.findall('abc+','abccc')
['abccc']
>>> re.findall('abc*','abccc')
['abccc']
>>> re.findall('abc?','abccc')
['abc']
{}匹配規則:現在條件如:{1,3}表示只有滿足1~3個中的任何一個就行。第一個數字需要小于第二個否則會出錯
>>> re.findall('abc{1,4}','abccc')
['abccc']
>>>
>>> re.findall('abc{1,4}','abcccccccccccccccc')
['abcccc']
>>> re.findall('abc{1,2}','abcccccccccccccccc')
['abcc']
元字符之字符集[]:表示里面有幾個值是或者的關系,但只能是一個,如非加{才能限制長度匹配}
>>> re.findall('a[b,c]{1}d?','abcddssaddddd')
['ab']
>>>
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。