我有一个非常大的文本文件。 这个文本文件中的每一行都有一个完整的句子。 现在我需要删除长度超过x个字符的每一行/句子,只保留长度<=x的行。
这是可能的吗? 我可以使用Notepad++ / EditPlus或正则表达式来完成吗?
谢谢你的帮助!
这是Notepad++的解决方案
在搜索模式中选择“正则表达式”。确保“.”匹配换行复选框未选中。
查找内容: .{x}.+
替换为: (空)
如果您不想在替换后留下空行:
查找内容: .{x}.+(\r?\n|\n|$)
将x
替换为您选择的数字。
使用bash:
$ awk '{if (length($0) <= x) print $0; }' myfyle.txt
这里的x
表示长度。它将打印比x
小的行。
更多awk好东西请参见Awk教程和介绍。