我有一个带图案内容的txt文件:
Line 1 id=1234
Line 2 id=0001
Line 3 id=4321
Line 4 id=9281
Line 5 id=6631
Line 6 id=1234
Line 7 id=1234
Line 8 id=4321
Line 9 id=7772
Line 10 id=0001
... up to Line 5000 id=6631
我想将所有重复内容(即第1,6,7行)替换为第一次出现。内容(第1行id = 1234; 6,7删除)。换句话说,行的内容id必须出现一次。这可能是正则表达式吗?
答案 0 :(得分:4)
假设一行按字面读取Line 1 id=1234
:
(Line [0-9]+ id=)([0-9]+)(.*?)(Line [0-9]+ id=)\2\n
,在替换方框中输入\1\2\3
。Regular Expression
并检查. matches newline
。Replace All
,直到删除所有重复项。Replace All: 0 occurrence was replaced.
。假设这些行只读id=1234
:
(id=[0-9]+)(.*?)\1\n
,在替换方框中输入\1\2
。Regular Expression
并检查. matches newline
。Replace All
,直到删除所有重复项。Replace All: 0 occurrence was replaced.
。