【发布时间】:2013-07-19 22:37:16
【问题描述】:
想从一个起点到终点清理所有东西
例子:
<!--
<group>
<name>Octopus</name>
<inventory>
<inventoryName>octopus</inventoryName>
<decoder>DFFDD</decoder>
<command>cat /etc/hosts</command>
</inventory>
</group>
-->
<!-- 是起点,--> 是终点,有时内容是多行到终点。
我想删除这些标签中的所有内容。
我尝试用 sed 开始一些事情,例如:
sed 's/^<\!--//g' 但不知道如何在看到结束标记后继续捕获所有内容并进行清理。
【问题讨论】:
-
你能保证:每个
<!-- some -->只在一行中吗?或者这里也有多行 cmets。你能确保不是像<!-- some <!-- another --> one -->这样的嵌套 cmets 吗? -
如果要解析 HTML,请使用 HTML 解析器,而不是正则表达式。
-
是的,有时是多行@jm666
-
@jm666 在有效的 HTML 中不能有这样的嵌套 cmets。