Python的正則包
import re
re的match函數(shù)昧识,第1參數(shù):目標(biāo)字符串,第2參數(shù):匹配模式愧膀。
match_obj = re.match(regex_str, line)
返回結(jié)果用match_obj.group()
注意:re.match是從字符串開頭進(jìn)行匹配,re.search可以在字符串任何位置匹配
.代表任意字符
*代表任意數(shù)量
^
匹配模式的^代表開頭混聊。^b代表是b開頭的嘴办。
^b.*代表b開頭的瞬场,任意字符的。
$
匹配模式的代表結(jié)尾涧郊。 3表示必須是以3結(jié)尾的贯被。
.*3$代表以3結(jié)尾,前面是任意字符串妆艘。
貪婪彤灶、()、?
匹配模式?是貪婪模式批旺。
- 非貪婪模式幌陕,是從后往前、從右往左匹配汽煮。
- 貪婪模式搏熄,就是加上?,從左邊開始匹配逗物。
+
+代表至少出現(xiàn)1次搬卒。
{1} {2,5} {2,}
{1}代表出現(xiàn)不多不少就1次。
{2,5}出現(xiàn)最少兩次翎卓,最多5次。
|
或
(())
先提外層座位group(1)摆寄,然后才是group(2)的內(nèi)層失暴。
[]
?* 任一字符
中括號(hào)表示其中任一一個(gè)都可以。[abcd] 是a, b, c, d中任何一個(gè)都可以微饥。
?* 區(qū)間
中括號(hào)還可以表示區(qū)間[0-9]逗扒,代表0到9中的數(shù)字。{0}是9位數(shù)字欠橘。
?* 不等于
"(1[48357][^1]{9})"
\s \S
\s 空格
\S 不為空格
如果要多個(gè)
"(a\S+b)"
\w\W
\w匹配包括下劃線的任何單詞字符矩肩,但不包含標(biāo)點(diǎn)符號(hào)如',',它等價(jià)于[A-Za-z0-9_];
\W相反肃续,代表與\w相反的字符黍檩。
\u4E00-\u9FA5
[\u4E00-\u9FA5]只提取漢字。
FireShot Capture 2 - 正則表達(dá)式速查表_腳本之家 - https___www.jb51.net_tools_regexsc.htm.png