regex - 正则表达式,删除标签之间的文本
问题描述
我需要删除所有不在标签<p>
和</p>
. 每个单元格中可以有许多<p>
标签。<p>
每行前后的内容</p>
不同。
例子
<h1>Curly Krans Daggdroppar 30cm LED</h1><h2>Beskrivning</h2><div id="more_info_sheets" class="sheets align_justify"><div id="idTab1" class="rte"><div id="more_info_sheets" class="sheets align_justify"><div id="idTab1" class="rte"><p>En krans med en snygg och intressant design. </p><p>Kransen har 30st ej utbytbara små LED lampor.</p><p>Finns i tre olika färger, välj mellan, koppar, mässing och krom.</p></div></div></div></div>
应该
<p>En krans med en snygg och intressant design. </p><p>Kransen har 30st ej utbytbara små LED lampor.</p><p>Finns i tre olika färger, välj mellan, koppar, mässing och krom.</p>
有人知道怎么做吗?
解决方案
您可以使用匹配表达式仅捕获所需的组
标签而不是替换文本的其余部分。然而,这里是正则表达式的另一种选择:
匹配所有 p 组
<p>.*<\/p>
分别匹配每个 p 组
<p>.*?<\/p>
匹配非 p 组
(^.*?(?=<p>))|((?<=<\/p>)<[^p].*)
推荐阅读
- java - 我无法在 recyclerview 上显示浮动操作菜单
- r - R中的奇偶一致性
- laravel - Laravel 5.x 和 7.x 认证中间件的区别
- javascript - 图像数组 ReactJs 响应式轮播
- sql-server - SQL CLR 中的 .Net Core 程序集
- scheme - 评估复合程序元循环“应用”的顺序
- apache-nifi - 在“ExtractText”调用的 Nifi 处理器“InvokeHttp”中,您在哪里编写 POST 请求的正文
- android - 调试 espresso 测试在“实例化测试...”处挂起并出现 Object.wait 错误
- python - Python (cpython) 在内存屏障和原子性等方面的行为是否得到保证?
- vue.js - 在 Vue 中观察数组的添加/删除