如何在记事本++中删除除HTML标记的html标记和内容之外的所有内容?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (103)

我在Notepad ++中打开一个HTML页面。

html页面有很多东西,但特别是这个标签:

<div id="issue_content">CONTENT</div>

我想从html文件中删除除此标记及其内容之外的所有内容:

<div id="issue_content">CONTENT</div>

文件示例:

<p>ewrfefsd</p>
<div id="issue_content">CONTENT</div>
<p>ewrfefsd</p>
</html>

删除后,文件的内容应如下所示:

<div id="issue_content">CONTENT</div>

我尝试使用正则表达式: (<div id=\"issue_content\">)(.*?)(<\/div>)(.*?) ,但此正则表达式仅删除<div id="issue_content">CONTENT</div>此标记的标记和内容

提问于
用户回答回答于

试试这个,$str你的HTML内容变量在哪里。

preg_match('/<div id="issue_content">(.*)<\/div>/i', $str, $matches);

echo $matches[1];
用户回答回答于

您可以将您的Regex更改为以下内容:想法是它匹配所有内容,但创建一个Match Group包含您想要的字符串,您可以使用以下内容替换所有内容Group

这是正则表达式:

/[\s\S]*?(<div id=\"issue_content\">[^>]+>)[\s\S]+/

它匹配你想要的所有字符串,然后用你的字符串创建一个Group,最后匹配所有内容。

更换时,替换为组1:

$1

现在你只有你的字符串。

扫码关注云+社区

领取腾讯云代金券