根据特定标准在多个文本文件中批量查找和替换特定字符串的最佳方法

根据特定标准在多个文本文件中批量查找和替换特定字符串的最佳方法

我有很多文本文件,我正在尝试批量查找和替换如下行:

  • rarePrefixTableLevelMax10,120,
  • rarePrefixTableLevelMax12,120,
  • rarePrefixTableLevelMax15,120,

格式基本上是括号内的rarePrefixTableLevelMax[XX],120,内容可以变化。XX

我有一个正则表达式,可以很好地找到这些行:

 rarePrefixTableLevelMax([0-2]?[0-9]|30),120,

问题是我不知道如何用“500”替换“120”,并且只替换有效行。我使用的是一个名为“查找和替换”的程序,又名 fnr.exe,它似乎无法使用正则表达式替换文本,它似乎只支持使用正则表达式进行搜索。

关于我可以使用什么或如何做到这一点,有什么想法吗?

编辑:只是为了清楚起见,我需要同时对多个文件执行此操作,由于文件太多,我无法手动进入每个文件执行此操作。

答案1

  • Ctrl+H
  • 找什么:rarePrefixTableLevelMax(?:[0-2]?[0-9]|30),\K120(?=,)
  • 用。。。来代替:500
  • 打钩 相符
  • 打钩 环绕
  • 选择 正则表达式
  • Replace all

解释:

rarePrefixTableLevelMax     # literally
(?:[0-2]?[0-9]|30)          # non capture group, number from 0 upto 30
,                           # a comma
\K                          # forget all we have seen until this position
120                         # 120
(?=,)                       # positive lookahead, make sure we have a comma after

截图(之前):

在此处输入图片描述

截图(之后):

在此处输入图片描述

相关内容