Notepad++删除多个文件中的字符串

我正在使用Notepad++工作,并尝试从许多文件中删除特定行。

例如,我有以下行: 1个文件:

<mana now="110" max="110" manaGain="6" manaTicks="500" type="3"/>

2个文件:

<mana now="100" max="100" manaGain="11" manaTicks="500"/>

正如您所看到的,这些值是不同的。我想从所有文件中删除此行。我能用Notepad++做到吗,特别是在每个文件具有不同值的情况下?

点赞
用户1981088
用户1981088

你可以使用 Notepad++ 和正则表达式来实现。请注意 - 请首先对所有文件进行备份

我假设你的文件都有扩展名*.xml,并且位于文件夹D:\_working中:

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>

  <mana now="110" max="110" manaGain="6" manaTicks="500" type="3"/>

</bookstore>
  • 首先通过 Notepad++ 打开一个工作目录中的文件。
  • 按下 Ctrl + H
  • 转到_Find in Files_标签。
  • 查找:<mana now="[0-9]{1,}" max="[0-9]{1,}" manaGain="[0-9]{1,}" manaTicks="[0-9]{1,}".+
  • 替换为: NOTHING
  • 过滤器:*.xml
  • 目录:例如D:\_working
  • 搜索模式:正则表达式
  • 单击Replace in Files
  • 当您确信时,单击OK

您可能需要根据自己的需要改进正则表达式。简短解释:

  • 0-9是在0(索引48)和9(索引57)之间的单个字符(区分大小写)
  • {1,}是量词 - 匹配一次到无限次,尽可能多
  • .+匹配任何字符(除了行终止符)

这将导致以下结果:

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>

</bookstore>
2019-10-27 11:16:54