在 Notepad++ 中使用正则表达式“全部替换”

在 Notepad++ 中使用正则表达式“全部替换”

所以我实际上从未深入使用过正则表达式。

我有一个由数千行组成的配置文件,如下所示:

“第 1 行”=18341235645

“第 2 行”=123784571

“第 3 行”=86273485

"第 4 行"=362234

...

“第 400 行”=491237850

“第 401 行”=491237850

我想要将这些行替换为例如这样的:

“第 1 行”= 123

“第 2 行”= 124

“第 3 行”= 125

“第 4 行”= 126

...

“第 400 行”= 300

“第 401 行”= 301

ETC。

= 后面的数字是我想要替换的,它们在当前形式下并不重要。

例如,我想将 400 个赞替换为 400-800,然后将另外 400 行替换为 1200-1600,然后将另外 400 行替换为 33000-33400,依此类推。

如何使用 Notepad++ 中的正则表达式完成此任务?

答案1

正则表达式可以很好地查找您想要删除的信息,但无法帮助您替换部分,因为您似乎希望对替换的内容有一些逻辑。

一个简单的脚本语言就可以轻松处理这个问题。

或者,您可以在 Excel 中尝试如下操作:

  1. 在 Excel 中打开文件
  2. 突出显示所有数据并选择数据 > 文本分列,然后输入=作为分隔符并选择 {none} 作为文本限定符
  3. 完成此操作后,所有键应位于 A 列中,而所有要删除的数据应位于 B 列中
  4. 删除 B 列,然后手动输入所需的值。请注意,您可以输入前几行,突出显示,然后只需选择单元格的右下角(当光标变成十字准线时)并单击并拖动即可向下填充。公式也可能有用。
  5. 在表格的 C 列中输入一个公式=A1&"="&B1,并将其填满整个列
  6. 将 C 列全部复制并粘贴到新文本文件中

答案2

这实际上不是正则表达式类型的问题。您可以使用正则表达式轻松删除 =1234(=\d+$仅替换为空白),但最好将文本加载到电子表格(Excel 或 OpenOffice)中的单个列中以创建新的编号方案。

在 Excel 中,只需使用行号即可使用如下公式创建数字:

=A1 & "=" & TEXT(ROW(A1),"0")

(假设您已将文本粘贴到 A 列并为 B 列设置此公式。)

相关内容