kja*_*keb 288 python regex search
在我正在编写的程序中,我使用Python re.search()函数在一个文本块中查找匹配项并打印结果.但是,程序一旦找到文本块中的第一个匹配就退出.
如果程序没有停止,直到找到所有匹配项,我该如何反复执行此操作?有没有单独的功能来做到这一点?
Amb*_*ber 493
使用re.findall或re.finditer代替.
re.findall(pattern, string) 返回匹配字符串列表.
re.finditer(pattern, string)返回MatchObject对象上的迭代器.
例:
re.findall( r'all (.*?) are', 'all cats are smarter than dogs, all dogs are dumber than cats')
# Output: ['cats', 'dogs']
[x.group() for x in re.finditer( r'all (.*?) are', 'all cats are smarter than dogs, all dogs are dumber than cats')]
# Output: ['all cats are', 'all dogs are']
Run Code Online (Sandbox Code Playgroud)