正則表達(dá)式
元字符
^ 匹配輸入字符串的開始位置
$ 匹配輸入字符串的結(jié)束位置
. 匹配除了換行符以外的任意一個單字符
\d 匹配任意一位數(shù)字
* 匹配前面的子表達(dá)式零次或多次
+ 匹配前面的子表達(dá)式一次或多次
? 匹配前面的子表達(dá)式零次或一次
(patter) 匹配patter
{n} n是一個非負(fù)整數(shù),匹配確定的n次
{n,} 同上,至少匹配n次
{1,10} 匹配介于1個到10個之前的表達(dá)式
[xyz] 匹配所包含的任意字符,
例: '[abc]' 可以匹配 "plain" 中的 'a'。
[a-z] 字符范圍。匹配指定范圍內(nèi)的任意字符
[A-Za-z] 匹配a到z之間任意字符,不分大小寫
[^a-z] 負(fù)值字符范圍。匹配任何不在指定范圍內(nèi)的任意字符
re模塊:
1 findall() 所有結(jié)果都返回到一個列表里
r2 = re.findall('asd', 'asdljdfasd')
print(r2)
返回結(jié)果:['asd', 'asd']
2 search()返回匹配到的一個對象,對象可以調(diào)用group()返回結(jié)果
r2 = re.search('asd', 'aljdfasd')
print(r2)
print(r2.group())
返回結(jié)果:
<_sre.SRE_Match object; span=(5, 8), match='asd'>
asd
3 match()只在字符串開始匹配
r1 = re.match('asd','asdljdfasd')
print(r1)
print(r1.group())
返回結(jié)果:
<_sre.SRE_Match object; span=(5, 8), match='asd'>
asd