📜  正则表达式忽略换行 (1)

📅  最后修改于: 2023-12-03 14:55:54.290000             🧑  作者: Mango

正则表达式忽略换行

什么是正则表达式?

正则表达式(Regular Expression)是一种用来匹配字符串的工具。使用正则表达式,可以快速地从一大段文字中找到符合特定要求的字符串。

为什么要忽略换行?

在实际应用中,通常字符串会跨越多行,此时如果不忽略换行,很可能匹配不到目标字符串。

如何忽略换行?

在正则表达式中,可以使用特殊字符\s来表示空格、制表符和换行符。如果要忽略换行符,只需要在\s前面加上(?s)即可。

例如,要匹配字符串中的"hello world",可以使用如下正则表达式:

(?s)hello\sworld

其中,(?s)表示忽略换行符,\s表示空格、制表符和换行符,helloworld分别表示目标字符串的前半部分和后半部分。

示例代码

以下是一个示例代码,它使用了正则表达式来匹配跨越多行的字符串。

import re

text = 'hello\nworld!'
pattern = r'(?s)hello\sworld'
match = re.search(pattern, text)

if match:
    print('Match found: ', match.group())
else:
    print('Match not found')

当运行上述代码时,输出应该为:

Match found:  hello
world