删除文本文件中的重复行?

删除文本文件中的重复行?

我正在尝试清理文本,但由于某种原因,每行重复 3 次,我可以使用正则表达式或技巧去除重复项,或者您知道可以做到这一点的软件吗,文本文件是这样的

Party Started 10:17 (89/1/2)
Party Started 10:17 (89/1/2)
Party Started 10:17 (89/1/2)
Jessica At Dinner 17:54 (89/1/2)
Jessica At Dinner 17:54 (89/1/2)
Jessica At Dinner 17:54 (89/1/2)

我怎样才能清理它,并摆脱重复的行,它大约有 69,587 行

答案1

您可以uniq在 bash 中使用 , 标准。只需输入:

uniq filewithdup.txt > filenew.txt

答案2

既然您提到了 MS Office,我将为您提供一个原生的 Windows 解决方案。

如果您使用的是 Windows Vista 或更高版本,则内置有 Windows PowerShell。您可以使用以下命令Get-Unique

Get-Unique cmdlet 将排序列表中的每个项目与下一个项目进行比较,消除重复项,并仅返回每个项目的一个实例。必须对列表进行排序,cmdlet 才能正常工作。

Get-Content input.txt | Get-Unique | Set-Content output.txt

如果没有排序,你可以使用Sort-Object -Unique(它也适用于已经排序的输入,但不要不是如果您不想删除重复项(中间有其他行),请使用)。

Get-Content input.txt | Sort-Object -Unique | Set-Content output.txt

答案3

正则表达式被标记,因此:

/(.+)\n\1/g

答案4

我在 Notepad++ 中使用以下正则表达式

Find what: (?sm)(^[^\r\n]*)[\r\n](?=.*^\1)
Replace with: (blank)
check Wrap around
check Regular expression
DO NOT CHECK . matches newline
Click Replace All

相关内容