賬號
字母開頭的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='你'>