Windows 10(64位),Emacs 25.1
假设我有文字:
111111111 aaaaaaaa bbbbbbbbbb
222222 3333333333 44444444
111111111 aaaaaaaa bbbbbbbbbb
111111111 aaaaaaaa bbbbbbbbbb
44444444 666666666 777777777777
111111111 aaaaaaaa bbbbbbbbbb
所以我想删除包含 aaaaaaaa 的重复行。
结果必须是:
111111111 aaaaaaaa bbbbbbbbbb
222222 3333333333 44444444
44444444 666666666 777777777777
我想使用Emacs的内置功能(没有编写自定义elisp脚本)。
答案 0 :(得分:1)
如果您希望从缓冲区中删除所有重复行(无论它们是否包含“aaaaaaa”),请使用:
delete-duplicate-lines
RET 请注意,您所需的结果包括删除所有空行(而不是保留其中一行),因此该帐户的Emacs结果不同。
如果要删除包含“aaaaaaaa”的所有行,请使用:
flush-lines
RET aaaaaaaa
RET 如果你在第一个实例之后用point发出这个,那么它就不会删除第一个实例。
如果你想要delete-duplicate-lines
的行为,但仅限于在包含“aaaaaaaa”的行上行动,那么我不知道标准命令(尽管它对{{{{{{{ 1}}介绍这样一个特征)。