Notepadd ++正则表达式替换等于某个位置的字符

时间:2017-07-26 17:22:23

标签: regex notepad++

有人可以帮我用Notepad ++ Regex替换某些位置的字符吗?我知道有很多与正则表达式相关的答案,但是我很难用这个,所以如果这是重复的话,我道歉。以下是我需要做的事情..

下面是一个文本修复文件,我需要: 1)将位置1-3中的字符替换为" 622"并替换为" 633"。 2)将位置35-42中的字符替换为零。 这是在之前:

622021000021833364532        00000202050007037174     JOHN SMITH              0043000264294578
6240631075131010089984136    00000162050006912435     JOHN SMITH              0043000264294622
6242631830492020236          00000025000006912435     JOHN SMITH              0043000264294622
6222631830492020257          00000015000006912435     JOHN SMITH              0043000264294581
6220610001041000142074458    00000202050500002543     JOHN SMITH              0043000264294582

这应该在以下之后:

623021000021833364532        00000000000007037174     JOHN SMITH              0043000264294578
6240631075131010089984136    00000000000006912435     JOHN SMITH              0043000264294622
6242631830492020236          00000000000006912435     JOHN SMITH              0043000264294622
6232631830492020257          00000000000006912435     JOHN SMITH              0043000264294581
6230610001041000142074458    00000000000000002543     JOHN SMITH              0043000264294582

以下是我到目前为止的请求1: 查找:^(。{3}) 这找到前3个字符,但我需要找到前3个字符=到" 622"。 我无法找到" 622"因为第2行和第3行有" 622"接近尾声。那些不应该被替换。

有人可以帮我解决这两个请求吗?任何帮助深表感谢! 谢谢! - 雷莫

1 个答案:

答案 0 :(得分:2)

  1. 查找^622替换:633

  2. 对于35-42,它会^(.{34}).{7}替换${1}0000000(多行模式)。两个正则表达式都是单独运行的,并且只运行一次。