python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python正则表达式re.findall()

Python正则表达式re.findall()几种方法示例

作者:勤奋的大熊猫

这篇文章主要介绍了Python正则表达式re.findall()几种方法示例,文中介绍了如何使用正则表达式在字符串中查找匹配的字符,并将它们返回为一个列表,示例展示了如何匹配数字并处理没有匹配到的情况,需要的朋友可以参考下

前言

调用方法:

re.findall(pattern, string, flags=0)

用法说明:扫描整个 字符串,找到所有满足匹配样式的字符,将它们集合在一起以列表形式返回。其中这个返回的列表包含空的结果(没有匹配到的结果)。

示例一

import re

str1 = "The telephone number of police in China is 110, and the telephone number of emergency is 120."
pattern = "\d+"
result = re.findall(pattern, str1)
print(result)
"""
result:
['110', '120']
"""

可以看到。通过这种匹配方式,我们成功地找出了一个字符串中的所有数字对象,并将它们集合起来作为一个列表对象进行了返回。

示例二

import re

str1 = "I got 1.0, and my classmate got 2.0."
pattern = "\d+"
result = re.findall(pattern, str1)
print(result)
"""
result:
['1', '0', '2', '0']
"""

我们是想通过匹配获取1.02.0这两个数字的。然而事与愿违,我们获得的是四个独立的数字,怎么办呢?应采用如下代码:

import re

str1 = "I got 1.0, and my classmate got 2.0."
pattern = "\d.\d"
result = re.findall(pattern, str1)
print(result)
"""
result:
['1.0', '2.0']
"""

可以看到,我们成功地获取到了我们需要的数字。

示例三

import re

str1 = "I got 1.0, and my classmate got 2.0."
pattern = "\d\d"
result = re.findall(pattern, str1)
print(result)
"""
result:
[]
"""

当我们找不到匹配对象时会返回一个空的列表对象。这与re.findall()函数的用法说明一致。

总结

到此这篇关于Python正则表达式re.findall()几种方法的文章就介绍到这了,更多相关Python正则表达式re.findall()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文