📅  最后修改于: 2023-12-03 15:15:04.276000             🧑  作者: Mango
在Python中,re.findall()
函数是一个常用的字符串匹配方法。它将从一个字符串中查找所有与给定模式匹配的子字符串,并将其以列表的形式返回。本文将介绍使用re.findall()
函数查找排序数字的示例。
假设有一组字符串列表,包含以下字符串:
strings = ['89', '24', '32', '17', '56', '100', '91', '77']
现在我们需要从中找出所有的数字,并将它们以排序后的列表的形式返回,我们可以使用如下代码:
import re
numbers = []
for string in strings:
number = re.findall('\d+', string)
if number:
numbers.append(int(number[0]))
# 排序数字列表
numbers.sort()
print(numbers)
输出结果为:
[17, 24, 32, 56, 77, 89, 91, 100]
在上述代码中,我们使用re.findall()
函数从字符串中查找出所有数字。具体实现中,我们使用\d+
这个正则表达式来匹配所有数字(\d
表示数字字符,+
表示匹配一个或多个)。
代码中,我们使用if
语句来检查re.findall()
返回的结果是否为空。(如果re.findall()
没有找到匹配项,它将返回一个空列表。)
如果找到了数字,我们使用int()
函数将其转换为整数并添加到numbers
列表中。
最后,我们使用sort()
方法对数字列表进行排序。
re.findall()
函数是一个强大的字符串匹配工具,能够根据正则表达式模式从字符串中查找与模式匹配的所有内容,并以列表的形式返回。在处理字符串数据时,它是一个非常有用的工具。