我需要删除唯一的行并将重复项保留在我的文本文件中(阅读所写的文章以删除重复的行,但我想做相反的事情)。有什么方法可以使用表达式或textfx吗? 例如:
file1.txt
hello
world
hello
操作后,输出应为
hello
hello
提前致谢
答案 0 :(得分:0)
这会找到所有行跟随的行重复(但它找不到最后一行):
.+\r\n(?=(.+\r\n)\1)
000000 111111 22
这匹配非空行0,但前后是(非空行\1
,后跟\1
)。
请注意,这假定\r\n
(Windows)行分隔。在Mac文本文件上的Unix文本文件\n
上,只有\r
。
在搜索框中,标记Regular expression
,取消标记. matches newline
,Replace with
=“”。
示例:
"Zulu
Alpha
Alpha
Bravo
Charlie
Charlie
Delta
Echo
Echo
Foxtrott
"
(file ends with empty line)
-->
"Alpha
Alpha
Charlie
Charlie
Echo
Echo
Foxtrott
"
答案 1 :(得分:0)
在替换对话框中:
查找
^(.+)\r?\n(?!(.|\r?\n)*\1)
替换:
*leave empty!*
选项:
优点:
缺点:
x
次,则会在正确的x-1
次出现后留下,而不是按照OP中的要求x
。