正在努力寻找一种方法来做到这一点,因此感谢任何帮助。
单行包含简单文本 - 并希望匹配最后 </p>
之后的所有文本标签。
我在 Open Office 中使用正则表达式 - 因此我需要返回直接匹配项而不是 JavaScript 数组。
字符串看起来像这样:
<p>Foo bar bar bar foo</p> <p>Foo bar bar foo</p> This Foo bar foo bar <br>
我可以匹配包括决赛</p>
像这样:
<\/p>(?!.*<\/p>).*$
我可以用 php 正则表达式风格来匹配它,如下所示:
(?<=<\/p>(?!.*<\/p>))(.*)(?=$)
我可以使用这个接近 - 但它只匹配第一个 <
- 不是全部</p>
字符串:
(?!.*<\/p>)(.*)(?=$)
让我发疯,所以感谢任何帮助。
谢谢
抱歉 - 是的,确实看到了重复的问题,但无法使其正常工作 - 所以他们针对他们的问题提出了以下解决方案:
.*\[\/quote\](.*)$
[\s\S]*\[\/quote\]([\s\S]*)$
我将其转换为我的问题,如下所示:
.*<\/p>(.*)$
[\s\S]*<\/p>([\s\S]*)$
我都无法使用开放办公室正则表达式 - 所以这就是问题所在。
最佳答案
抱歉,我没听清您想要的内容:
</p>
使用这个:
.*<\/p>(.*)$
您有一个数组,其中第二个元素就是您要查找的元素。
测试代码:
var text = '<p>Foo bar bar bar foo</p> <p>Foo bar bar foo</p> This Foo bar foo bar <br>';
var patt = new RegExp(".*<\/p>(.*)$");
var matched = patt.exec(text);
测试人员:
http://www.pythontutor.com/javascript.html#mode=edit
结果:
关于javascript - 正则表达式匹配字符串最后一次出现后的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36008268/