findall()
是 Python 中的正则表达式库 re
的一个函数,用于在字符串中查找所有与正则表达式匹配的子串
以下是 findall()
的基本操作:
- 导入
re
模块:
import re
- 使用
findall()
函数查找字符串中与正则表达式匹配的所有子串:
pattern = r'\d+' # 匹配一个或多个数字字符
text = "There are 123 apples and 456 oranges in the basket."
matches = re.findall(pattern, text)
在这个例子中,pattern
是一个正则表达式,用于匹配一个或多个数字字符。text
是一个包含数字和其他字符的字符串。findall()
函数返回一个包含所有匹配子串的列表:
['123', '456']
- 如果需要查找更复杂的匹配模式,可以在正则表达式中使用各种元字符和量词。例如,要查找所有以 “www.” 开头的网址,可以使用以下正则表达式:
pattern = r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+'
-
如果需要查找字符串中第一个匹配的子串,可以使用
search()
函数。如果要查找所有匹配的子串,请继续使用findall()
函数。 -
如果需要替换字符串中与正则表达式匹配的子串,可以使用
sub()
函数。
希望这些示例能帮助您了解 Python 中 findall()
的基本操作。如果您有其他问题,请随时提问。