好吧,我已经玩了一段时间了,已经接近了,但仍然无法实现。
我想去:
a
a
b
a
c
a
到(在Notepad ++中):
b
c
我可以做到:
a
b
c
这是迄今为止我最大的失败,但是您明白了:
^(((.+)(\r?\n))(?:(?!\1).*\s*)?)((?:(?!\2).*\s*)?(\2))+
^((.+)(\r?\n))((?:(?!\1).*\s*)?(\1))+
最接近的尝试:
^((.+)(\r?\n))(?=(.+)(\r?\n))?(\1)+
答案 0 :(得分:2)
对于那些没有阅读注释的人,想法是使用NP ++通过将其放入完整的IP列表中并完全删除在任何地方出现的重复行来过滤IP黑名单。
这可以通过use of a variable length lookbehind完成,这在记事本++中是不受支持的。
作为一种解决方法,并且也更有效:
^(.+)\R(?:\1(?:\R|$))+
的简单模式删除连续的重复行。^
line start (.+)\R
capture one or more个字符到\1
,后跟\R
换行符。(?:\1(?:\R|$))+
后跟一个或多个(\1
,后跟(换行符或$
结束))。答案 1 :(得分:0)
正则表达式恕我直言,不要执行此任务。这种任务需要处理成任何编程语言。我发布了一种庞大的解决方案,但基于shell:
sort file.txt | uniq -d
此命令将对文件进行排序并显示重复值的列表。