假设你有以下文本:

abc
123
abc
456
789
abc
abc

我想去掉所有的“abc”行,只留下一行。我不介意排序。结果应该是这样的:

abc
123
456
789

当前回答

安装DupChecker扩展,点击F1,并键入“检查副本”。

它将检查副本并询问您是否要删除它们。

其他回答

尝试查找并替换为正则表达式。

发现: ^(.+)((?:\ r \ n。*)*)(?:\ r ? \ n \ 1)美元 替换: 1美元2美元

在第一组中引入一些方差是可能的。

添加到@Marc。2377的答复。

如果顺序很重要,并且您不关心只保留最后的重复行,如果您只想删除重复的非空行,则只需搜索下面的regexp

^(.+)\n(?=(?:.*\n)*?\1$)

如果还想删除重复的空行,请使用*而不是+

^(.*)\n(?=(?:.*\n)*?\1$)

什么都不替换。

这将取一行,并试图找到前面更多(可能是0)行,后面跟着完全相同的行。它将删除所取的线。

这只是一个一次性的正则表达式。不需要垃圾邮件替换按钮。

现在还考虑了@awk的注释,其中最后一行必须有换行符才能被识别为重复。现在,通过从搜索行中排除\n并在找到的行中添加$,情况就不再是这样了。

我只是有同样的问题,并找到Visual Studio代码包“排序行”。详见Visual Studio Code市场(例如,排序行)。

这个包有选项“排序行(唯一)”,这为我做了。注意行首和行尾的空白。它们影响行是否被认为是唯一的。

安装DupChecker扩展,点击F1,并键入“检查副本”。

它将检查副本并询问您是否要删除它们。

崇高的文本3

它具有非常快的原生排列函数。

编辑> Permute Lines > Unique或⌘U,和 编辑>排列选择>唯一

Visual Studio Code是我的日常驱动程序。但是,我保持崇高的文本在这些情况下待命。