正則匹配常見字符串

賬號

字母開頭的n位包含只包含數字字母的

ASCII 和 UNICODE 編碼的差別

\w
對於 Unicode (str) 樣式:
匹配Unicode詞語的字符,包含了可以構成詞語的絕大部分字符,也包括數字和下劃線。

如果設置了 ASCII 標誌,就只匹配 [a-zA-Z0-9_] 。
對於8位(bytes)樣式:
匹配ASCII字符中的 [a-zA-Z0-9_] 。

import re

# (?a) 代表按照 ascii 編碼進行匹配
template1=re.compile(r'(?a)^\w$')
template2=re.compile(r'^\w$')
res1=re.match(template1,"6")
print(res1)

res1=re.match(template1,"你")
print(res1)

res2=re.match(template2,'你')
print(res2)

<_sre.SRE_Match object; span=(0, 1), match='6'>
None
<_sre.SRE_Match object; span=(0, 3), match='你'>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章