正则表达式来在我有正则表达式匹配pattern like this文件
问题描述:
匹配模式和最后一个空行:正则表达式来在我有正则表达式匹配<a href="https://regex101.com/r/GEzzNo/1" rel="nofollow noreferrer">pattern like this</a>文件
\AX.*(?:\r?\n[KLM].*)*\r?\nZ.*(?:\r?\nX.*(?:\r?\n[KLM].*)*\r?\nZ.*)*\z
有什么办法,我可以用一个额外的行更新相同的正则表达式匹配相同的模式?
A---Header
K
L
M
Z---Footer
--> empty line. No characters and spaces are there
我已经尝试过做一些谷歌选项..但这是行不通的。
任何建议
谢谢!
答
\z
锚点匹配在字符串的最后。要匹配可以与0个或多个空行结束的字符串,加(?:\r?\n)*
前\z
:
\AX.*(?:\r?\n[KLM].*)*\r?\nZ.*(?:\r?\nX.*(?:\r?\n[KLM].*)*\r?\nZ.*)*(?:\r?\n)*\z
^^^^^^^^^^
如果字符串可以在年底\n
符号,你可能只是更换\z
与$
(因为$
可以在字符串中的最后换行符之前匹配,而\z
恰好匹配字符串的末尾)。
[用'$'替换'\ z'](https://regex101.com/r/GEzzNo/3)。或者使用['\ r?\ n \ z'](https://regex101.com/r/GEzzNo/2)。 –
不工作!检查这个https://regex101.com/r/6Egh7C/1 – kelly
你的意思是可以有*许多*空行?只需在'\ z'前加'(?:\ r?\ n)*'即可。 –