Notepad ++在每5行后添加后缀

时间:2017-01-19 08:08:50

标签: regex notepad++

我有一个包含用户名列表(+100,000行)的文本文件,我想在每5行后添加一个后缀。

示例:

Username1
Username2
Username3
Username4
Username5 SUFFIX HERE!
Username6
Username7
Username8
Username9
Username10 SUFFIX HERE!
Username11
Username12
Username13
Username14
Username15 SUFFIX here!
Username16
... etc.

我尝试使用正则表达式搜索^(.+)$然后\1 suffixtext!尝试失败。它改变了所有的路线。而我只需要每5行。

我还要在后缀后添加一个随机数。

谢谢你, 问候。

1 个答案:

答案 0 :(得分:2)

您可以使用

^.*(?:\R.*){4}

并替换为$& SUFFIX 0

<强>详情:

  • ^ - 开始行
  • .* - 除了换行符之外的任何0 +字符
  • (?:\R.*){4} - 正好有4次换行符(任何样式,\R)后跟除换行符之外的任何0 +字符(.*)。

替换包含对整个匹配($&)的反向引用,然后是一个数字。

使用设置查看屏幕截图:

enter image description here

要稍后在SUFFIX之后递增数字,请使用Python脚本

cnt = 0
def incrementnum(match):
    global cnt
    cnt = cnt + 1
    return "{0}{1}".format(match.group(1), str(int(match.group(2))+cnt))
editor.rereplace(r'(SUFFIX )(\d+)$', incrementnum)

只需关注these instructions to use it in your NPP