Python里用正则表达式匹配两个字符之间含有换行符如何匹配第二个字符串
可以使用re.DOTALL标志,使"."元字符匹配任何字符,包括换行符。然后使用括号捕获第一个字符串,并在正则表达式中使用反向引用来匹配第二个字符串。
示例代码:
import re
text = 'abc\n123\ndef'
pattern = r'(abc\n.*?\n)(def)'
match = re.search(pattern, text, re.DOTALL)
if match:
print(match.group(1)) # 输出第一个字符串:abc\n123\n
print(match.group(2)) # 输出第二个字符串:def
解释:
abc\n:匹配第一个字符串的开头;.*?:匹配任意字符,包括换行符,非贪婪模式;\n:匹配第一个字符串的结尾,同时也是第二个字符串的开头;(abc\n.*?\n):使用括号捕获第一个字符串;(def):匹配第二个字符串。
原文地址: https://www.cveoy.top/t/topic/bz8S 著作权归作者所有。请勿转载和采集!