正则表达式 – 如何匹配两个字符串之间的所有文本多行

前端之家收集整理的这篇文章主要介绍了正则表达式 – 如何匹配两个字符串之间的所有文本多行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试完成与 here相同的事情:

即假设你有一个像这样的文字

<p>something</p>

<!-- OPTIONAL -->

<p class="sdf"> some text</p>
<p> some other text</p>

<!-- OPTIONAL END -->

<p>The end</p>

什么是匹配的正则表达式:

<p class="sdf"> some text</p>
<p> some other text</p>

我使用以下设置了live test here

<!-- OPTIONAL -->(.*?)<!-- OPTIONAL END -->

但它没有正确匹配.此页面上接受的答案也不适用于我.我错过了什么?

解决方法

不幸的是,RegExr依赖于JS RegExp实现,它不支持启用所需标志/修饰符的选项.

您正在寻找强制点的s(DotAll)修改器.匹配换行序列.

> Live Demoregular expressions 101

如果您使用的是JavaScript,则可以使用此解决方法

/<!-- OPTIONAL -->([\S\s]*?)<!-- OPTIONAL END -->/

猜你在找的正则表达式相关文章