python如何分行匹配

原创
admin 16小时前 阅读数 1 #Python

Python中常用的匹配操作是正则表达式匹配,可以使用re模块进行,如果要实现分行匹配,需要在正则表达式中使用换行符。

下面是一个简单的例子,假设要匹配一个字符串中所有的行,每行只有一个数字:

import re
要匹配的字符串
s = """
1
2
3
4
5
"""
使用正则表达式匹配所有行
pattern = r“\d+”
matches = re.findall(pattern, s)
输出匹配结果
print(matches)  # 输出 [‘1’, ‘2’, ‘3’, ‘4’, ‘5’]

在上面的例子中,正则表达式\d+ 匹配一个或多个数字,使用re.findall() 函数可以返回所有匹配项,由于每行只有一个数字,因此这个正则表达式可以匹配所有行。

如果要匹配多行,可以使用多行模式,即在正则表达式中使用(?m) 标志。

import re
要匹配的字符串
s = """
1 2 3
4 5 6
7 8 9
"""
使用正则表达式匹配所有行
pattern = r“(?m)^[0-9]+”
matches = re.findall(pattern, s)
输出匹配结果
print(matches)  # 输出 [‘1 2 3’, ‘4 5 6’, ‘7 8 9’]

在上面的例子中,正则表达式(?m)^[0-9]+ 使用了多行模式,并使用^ 符号表示行的开头,这个正则表达式可以匹配所有行,每行至少包含一个数字。

热门