了解:正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。
普通字元作為原子
import re
string=
"helloworld"
#普通字元作為原子
p="owo"
#要匹配的字元賦予p
result=re.search(p,string)
print
(result)
執行結果
由此可見可以匹配出來
import re
string=
"helloworld"
#普通字元作為原子
p="owr"
#這裡要匹配的是
result=re.search(p,string)
print
(result)
none
匹配的字元是"owr"從string查詢不到所以執行結果為none
2.非列印字元作為原子
import re
#非列印字元作為原子例:\n \t
string=
'''helloworld
wangyi'''
p="\n"
result=re.search(p,string)
print
(result)
string中有\n換行符,故可以匹配得到
3.通用字元作為原子
import re
#使用通用字元作為原子
#常用通用字元
'''\w匹配字母數字下劃線
\w匹配除字母數字下劃線以外的
\d匹配十進位制數字
\d匹配除十進位制數字
\s匹配空白字元
\s匹配除空白字元
'''string=
'''helloworld314256737 sggj32
wangyi
'''p=
"\w\w\w\w\w"
result=re.search(p,string)
print
(result)
因為\w連續匹配五次,所以匹配到了"hello"
原子表
#原子表
import re
string=
'''helloworld
wangyi'''
p="lo[how]or"
#只從原子表中選取乙個字元
result=re.search(p,string)
print
(result)
p=「lo[how]or」#只從原子表中選取乙個字元,所以從原子表中匹配到了w,最終匹配到"lowor"
#原子表
import re
string=
'''helloworld
wangyi'''
p="lo[^how]or"
#^非的意思,原子表中均不能匹配
result=re.search(p,string)
print
(result)
none
^非的意思,原子表中均不能匹配,所以最終結果為none
#元字元
'''元字元就是正規表示式中具有一些特殊含義的字元。
.除換行符外任意乙個字元
^開始位置
$結束位置
*出現0次1次多次
?出現0次一次
+出現一次多次
恰好出現n次
至少n次
至少n次至多m次
|模式選擇符
()代表模式單元
'''import re
string=
'''helloworld
wangyi'''
p=".owo."
result=re.search(p,string)
print
(result)
.owo.第乙個.匹配到了』l』,第二個.匹配到了』r』
import re
string=
'''helloworld
wangyi'''
p="^.owo."
result=re.search(p,string)
print
(result)
none
import re
string=
'''helloworld
wangyi'''
p=".owo.*"
result=re.search(p,string)
print
(result)
import re
string=
"helloworld"
p="low"
result=re.search(p,string)
print
(result)
none
p="low"中l大寫所以匹配不出來,這時我們會用到模式修正符來忽略大小寫。如何新增模式修正符呢?
import re
string=
"helloworld"
p="low"
result=re.search(p,string,re.i)
#在這裡新增模式修正符
print
(result)
這就匹配出來了。
貪婪模式例子
import re
string=
"helloworld"
p="w.*d"
result=re.search(p,string)
print
(result)
例子更新版
import re
string=
"hellwodworld"
p="w.*d"
result=re.search(p,string)
print
(result)
儘管字串中有wodworld它依然會匹配到最後乙個d處。
懶惰模式例子
import re
string=
"hellwodworld"
p="w.*?d"
result=re.search(p,string)
print
(result)
python官網對re正則的介紹 正規表示式初識
用來指定乙個字元集合 字元直接是 或 的關係,不是乙個特定的字串,跟 abc 不同 abc a z 在字符集中,元字元 不起作用 abc abc 元字元 在字串尾不起作用 abc 就是普通字元。元字元在字符集首表示匹配補集,abc 就是匹配除了a,b,c以外的字元。匹配行首,位於字串首。制定規則re...
正規表示式初識
正規表示式 為轉義如 表示.郵箱匹配 grep e 0 9a za z 0 9a za z a za z a.txt 查詢郵箱 a z 所有小寫字母 a z 所有大寫字母 0 9 所有數字 0 9 所有非數字 表達取反 0 9 a z 0個或多個小寫字母 a z 至少出現一次小寫字母 a z 出現0...
初識正規表示式
正規表示式 1.概念 一種字串匹配規則 1.1 判斷 input進來的 是不是qq號 是不是手機號 身份證號 1.2 有乙個檔案,要求把手機號 qq號 取出來 2.能做什麼 2.1 可以制定乙個規則 來確認某乙個字串是否符合規則的內容 從打斷的字串中找到符合規則的內容 2.2 程式領域 1,登入程式...