# 正規表示式
import re # 正規表示式模組
# 匹配除了換行符之外的所有字元
m = re.findall('.', 'aa\ccdef')
print(m)
# 執行結果:['a', 'a', '\\', 'c', 'c', 'd', 'e', 'f']
# 轉義字元
m = re.findall('\.', 'ad.cb')
print(m)
# 執行結果:['.']
# 字符集
m = re.findall('a[bcd]e', 'abeaceade') #字符集就是用擴起來的,只要匹配其中的任意乙個字元都可以
print(m)
# 執行結果:['abe', 'ace', 'ade']
# 數字
m = re.findall('\d', 'abc123def')
print(m)
# 執行結果:['1', '2', '3']
# 非數字
m = re.findall('\d', 'abc123def')
print(m)
# 執行結果:['a', 'b', 'c', 'd', 'e', 'f']
# 空白字元
m = re.findall('\s', 'abc a\tb2c')
print(m)
# 執行結果:[' ', '\t']
# 非空白字元
m = re.findall('\s', 'abc a\tb2c')
print(m)
# 執行結果:['a', 'b', 'c', 'a', 'b', '2', 'c']
#數字和字母
m = re.findall('\w', 'abc#12#e#f-+')
print(m)
# 執行結果:['a', 'b', 'c', '1', '2', 'e', 'f']
#非數字和字母
m = re.findall('\w', 'abc#12#e#f-+')
print(m)
# 執行結果:['#', '#', '#', '-', '+']
#匹配開頭
m = re.findall('^abc', 'abcabc') #匹配開頭的abc
print(m)
# 執行結果:['abc']
#匹配結尾
m = re.findall('abc$', 'abcabc') #匹配結尾的abc
print(m)
# 執行結果:['abc']
#不區分大小寫
m = re.findall('abc', 'abcabc', re.i)
print(m)
# 執行結果:['abc', 'abc']
#匹配換行
s = 'hello\nworld
'm = re.findall(r'(.*)
', s, re.s)
print(m)
# 執行結果:['hello\nworld']
#匹配多行
m = re.findall('^abc','abc\nabc')
print(m) # ['abc']
m = re.findall('^abc','abc\nabc',re.m)
print(m) # ['abc', 'abc']
# 執行結果:['abc', 'abc']
# 匹配乙個或0個
m = re.findall('ab?', 'abbbbaba')
print(m)
# 執行結果:['ab', 'ab', 'a']
# 匹配至少乙個
m = re.findall('ab+', 'abbbbabb') # 匹配乙個或著多個
print(m)
# 執行結果:['abbbb', 'abb']
# 匹配至少0個
m = re.findall('ab*', 'aaabbabb')
print(m)
# 執行結果:['a', 'a', 'abb', 'abb']
#匹配以org結尾的郵箱
m = re.findall('\w+@\w+\.org','[email protected];[email protected]')
print(m)
# 執行結果:['[email protected]']
#其他規則
# 如果是多次呼叫某個正則,則最好先編譯後使用,編譯之後,可以多次使用
p = re.compile('^abc')
m = p.findall('abc\nabc')
print(m)
# 執行結果:['abc']
m = p.findall('abcdef\nnfdsfabc')
print(m)
# 執行結果:['abc']
m = p.findall('abcdef\nnfdsfabc')
print(m)
# 執行結果:['abc']
Python常見正規表示式
一 校驗數字的表示式 數字 0 9 n位的數字 d 至少n位的數字 d m n位的數字 d 零和非零開頭的數字 0 1 9 0 9 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 帶1 2位小數的正數或負數 d d 正數 負數 和小數 d d 有兩位小數的正實數 0 9 0 9 有1 3位小...
常見正規表示式
d 匹配非負整數 正整數 0 0 9 1 9 0 9 匹配正整數 d 0 匹配非正整數 負整數 0 0 9 1 9 0 9 匹配負整數 d 匹配整數 d d 匹配非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 匹配正浮點數 d d 0...
常見正規表示式
整數或者小數 0 9 0 9 只能輸入數字 0 9 只能輸入n位的數字 d 只能輸入至少n位的數字 d 只能輸入m n位的數字 d 只能輸入零和非零開頭的數字 0 1 9 0 9 只能輸入有兩位小數的正實數 0 9 0 9 只能輸入有1 3位小數的正實數 0 9 0 9 只能輸入非零的正整數 1 9...