如何解决选择2个html标记内的文本以及嵌套标记内的文本-RegExp
我正在使用以下表达式获取标记内的所有文本:
/(<\s*(div|a|p|span|h1|h2|h3|h4|h5|h6|title)[^>]*>)([^<]+)(<\s*\/\s*(div|a|p|span|h1|h2|h3|h4|h5|h6|title)[^>]*>)/gi
它实际上是在获取,但是如果在标签内有类似此标签的语句
<p class="lead mb-0">
Freelance is a free to use,MIT licensed Bootstrap theme created by
<a href="http://startbootstrap.com">StartBootstrap</a>
</p>
它会在a标签内获取文本,但也不会在p标签内获取文本。
解决方法
如果只想在标签之间选择文本,请使用以下命令:
(?<=(div|a|p|span|h1|h2|h3|h4|h5|h6|title)[^>]*>)([^<]+)/gi
共享表达式的问题是对结束标记的期望,对于嵌套标记则不是这种情况
(<\s*\/\s*(div|a|p|span|h1|h2|h3|h4|h5|h6|title)[^>]*>)/gi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。