【发布时间】:2016-02-25 17:05:30
【问题描述】:
在一行中的分隔项中删除重复项(不一定是连续的)是一种智能且简单的方法。
之前:
apple,banana,apple,cherry,cherry
delta,epsilon,delta,epsilon
apple pie,delta,delta
之后:
apple,banana,cherry
delta,epsilon
apple pie,delta
应该可以在 Mac 上运行。允许 Unicode。任何 shell 方法/语言/命令。欺骗不一定是连续的。
注意:这个问题是How to remove dupes from blocks of text 的变体——它是针对用空行分隔的文本块。
【问题讨论】:
-
任何时候您发布“如何删除重复”问题时,您都应该在示例输入中包含一个单词是另一个单词的子字符串的情况,例如
apple,pineapple因为通常情况下,编写解决方案的人不会考虑这种情况,除非它是问题的具体部分。此外,如果可以存在 RE 元特征,例如.、*、?等也包括这些,因为人们经常提出基于正则表达式而不是基于字符串的解决方案,而当可以存在 RE 元字符时,这些解决方案要正确得多。
标签: awk