相关疑难解决方法(0)

删除重复行而不进行排序

我在Python中有一个实用程序脚本:

#!/usr/bin/env python
import sys
unique_lines = []
duplicate_lines = []
for line in sys.stdin:
  if line in unique_lines:
    duplicate_lines.append(line)
  else:
    unique_lines.append(line)
    sys.stdout.write(line)
# optionally do something with duplicate_lines
Run Code Online (Sandbox Code Playgroud)

这个简单的功能(uniq无需先排序,稳定排序)必须作为简单的UNIX实用程序提供,不是吗?也许是管道中过滤器的组合?

询问的原因:在我无法从任何地方执行python的系统上需要此功能

shell scripting filter uniq

92
推荐指数
5
解决办法
5万
查看次数

如何使用正则表达式查找和删除文件中的重复行?

这个问题意味着与语言无关.只使用正则表达式,我可以找到并替换文件中的重复行吗?

请考虑以下示例输入和我想要的输出;

输入>>

11
22
22  <-duplicate
33
44
44  <-duplicate
55
Run Code Online (Sandbox Code Playgroud)

输出>>

11
22
33
44
55
Run Code Online (Sandbox Code Playgroud)

regex

40
推荐指数
3
解决办法
3万
查看次数

标签 统计

filter ×1

regex ×1

scripting ×1

shell ×1

uniq ×1