VSCode:删除所有包含不同内容的xml标记对

时间:2019-02-05 14:02:47

标签: visual-studio-code kml vscode-tasks

我正在VSCode中的kml(xml)文件中工作。 标记的267个实例具有相同的内容架构,但内容不同。我想要一种快速的方法来删除的所有实例,包括内容,而不是手动删除每个实例。如果Notepad ++或其他编辑器可以执行我想做的事情,我不会嫁给VSCode。

使用一个命令/宏删除这两个命令/宏(再添加265个)

<description><![CDATA[<center><table><tr><th colspan='2' align='center'> 
<em>Attributes</em></th></tr><tr bgcolor="#E3E3F3">
<th>NAME</th>
<td>Anderson</td>
</tr><tr bgcolor="#E3E3F3">
</tr></table></center>]]>
</description>

<description><![CDATA[<center><table><tr><th colspan='2' align='center'> 
<em>Attributes</em></th></tr><tr bgcolor="#E3E3F3">
<th>NAME</th>
<td>Billingsly</td>
</tr><tr bgcolor="#F00000">
</tr></table></center>]]>
</description>

谢谢你,保罗

1 个答案:

答案 0 :(得分:2)

您可以在vscode查找/替换中使用此正则表达式:

\n?<description>[\S\s\n]*?<\/description>\n?

,什么也不要替换。如果您还想删除标记所在的行,则在\n?的开头和结尾处都存在-查看其工作原理,如果您不关心已删除行的空白行,则可以删除它们内容曾经是。

很显然,如果输入格式错误,例如不匹配的<description></description>标记,则正则表达式将无效。