说我有:
Example
Example
1
1
3
期望:
Example
1
答案1
假设你的文件已排序并以空行结束
- Ctrl+H
- 找什么:
^(.+\R)(\1)*
- 用。。。来代替:
$2
- 打钩 相符
- 打钩 环绕
- 选择 正则表达式
- 取消勾选
. matches newline
- Replace all
解释:
^ # beginning of line
( # group 1
.+ # 1 or more any character but newline
\R # any kind of linebreak
) # end group 1
( # group 2
\1 # backreference to group 1 (i.e. same value as captured in group 1)
)* # end group 2, may appear 0 or more times
替代品:
$2 # content of group 2, will be empty if there are no duplicates
截图(之前):
截图(之后):
答案2
以下解决方案要求重复的行包含在文件中的一个序列中。
为了删除独特的线条,我找到了帖子
查找并保留文本文件中所有重复的行(而不是唯一的行)。
根据帖子中的答案和评论,以下内容将删除唯一的行。
在“查找和替换”对话框 ( Ctrl+ H) 中执行以下操作:
搜索什么:^((.*)\R(\2\R?)+)*\K.*?\n
用。。。来代替: 没有什么
搜索模式: 正则表达式
. 匹配换行符:已检查
单击“全部替换”可删除唯一线条。
对于删除重复的行,请参阅帖子 记事本删除重复的行。