如何在 Python 中跨多行匹配模式?

如何在 Python 中跨多行匹配模式?

正则表达式是一组字符,它允许您使用搜索模式来查找一个字符串或一组字符串。 RegEx 是正则表达式的另一个名称。

Python 中的 re 模块用于处理正则表达式。要在 Python 中使用正则表达式跨多行匹配模式,我们使用如下的正则表达式: < p>.*</p>

在这里:

  • < p>,</p>表示 HTML5 中的段落标签。

  • 表示零个或多个字符。

  • 点号是一个特殊字符,它与所有字符(包括换行符)匹配,并利用 re.DOTALL 标志实现。

通常,在正则表达式搜索中,“.”特殊字符不匹配换行符。为了解决这个问题,“re”包提供了一些预定义标志,可以修改特殊字符的行为方式。因此,通过使用 re.DOTALL 标志,我们可以匹配跨多行的模式。

阅读更多:Python 教程

示例

在下面的示例代码中,我们使用正则表达式匹配段落的 span 标签。我们首先导入正则表达式模块。

import re

然后,我们使用从 re 模块导入的 search() 函数。这个 re.search() 函数搜索字符串/段落以查找匹配项,并返回一个匹配对象(如果有匹配项)。 group() 方法用于返回匹配的字符串部分。

import re
paragraph = \
'''
<p>
Tutorials point is a website.
It is a platform to enhance your skills.
</p>
'''
match = re.search(r'<p>.*</p>', paragraph, re.DOTALL)
print(match.group(0))

输出

执行上述程序后,将获得以下输出。

<p>
Tutorials point is a website.
It is a platform to enhance your skills.
</p>

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程