我在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的系统上需要此功能
这个问题意味着与语言无关.只使用正则表达式,我可以找到并替换文件中的重复行吗?
请考虑以下示例输入和我想要的输出;
输入>>
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)