1、應用范圍
python有什么用?findall把匹配到的東西,都放到列表里邊
print (re.findall("\d+\w\d+","a2d3d4r5st6y7u"))
輸出結果為:['2d3', '4r5', '6y7']
print (re.findall("","a2d3d4r5st6y7u"))
輸出結果為:['', '', '', '', '', '', '', '', '', '', '', '', '', '', '']
testss='helloss alex bcd alex dd acd 19s'
r=re.search('a(\w+)',testss)
print (r.group())
輸出結果為:alex
testss='helloss alex bcd alex dd acd 19s'
r=re.findall('a(\w+)',testss)
print (r)
輸出為:['lex', 'lex', 'cd']
testss='helloss alex bcd alex dd acd 19s'
r=re.findall('(a)(\w+)',testss)
print (r)
輸出結果為:[('a', 'lex'), ('a', 'lex'), ('a', 'cd')]
findall方法是沒有字典的
testss='helloss alexe bcd alex dd acd 19s'
r=re.findall('(a)(\w+(e))(x)',testss)
print (r)
輸出結果是:[('a', 'le', 'e', 'x'), ('a', 'le', 'e', 'x')]
testss='helloss alexe bcd alex dd acd 19s'
r=re.findall('(a)(\w+(e))(x)(?Px)',testss)
print (r)
輸出結果是:[]
testss='helloss alexe bcd alex dd acd 19s'
r=re.finditer('(a)(\w+(e))(?Px)',testss)
print (r) #輸出結果是可以被調用的迭代
for i in r:
print (i)#這個i就是和match到的結果是一樣的 也有group。。。。。
輸出結果是:
import re
a='alex'
n=re.findall('(\w)+',a)
print (n) #輸出['x'] 帶‘+’號貪婪匹配,取最后一個分組
n=re.findall('(\w+)',a)
print (n)#輸出['alex']
n=re.findall('(\w)',a)
print (n)#輸出['a', 'l', 'e', 'x']
n=re.findall('(\w)*',a)
print (n)#輸出['x', '']
n=re.findall('(\d\w\w\w)','1qsx2wdc3edccee4rf5tgddd7uj')
print (n)#輸出['1qsx', '2wdc', '3edc', '4rf5']
n=re.findall('(\d\w\w\w)*','1qsx2wdc3edccee4rf5tgddd7uj')
print (n)#輸出['3edc', '', '', '', '4rf5', '', '', '', '', '', '', '', '', '']
匹配條件 加了()就是分組匹配的了
2、
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态