我有一个巨大的文件,我需要过滤掉所有不包含电子邮件地址的行(逗号分隔文件)(由 @ 字符确定)。
现在我所拥有的是找到所有包含@符号的行:
.*,.*,.*@.*,.*$
基本上你有 4 个值,第三个值有电子邮件地址。
替换为:值将为空。
在 TextMate 中,您有大约 10 种不同的方法来执行此操作,甚至可以通过命令行执行此操作。这里有一些更简单的方法......
来自 TextMate:
从命令行:
键入以下命令之一,将 FILE 替换为文件名,包括文件路径(如果它不在当前工作目录中)。过滤后的内容可以在 FILE-new 中找到。
egrep -v '@' FILE > FILE-new
cat FILE | sed -e "/@/D" > FILE-new
对于以上两种情况,使用diff
来查看您完成了什么:diff FILE{,-new}
应该可以吧,我猜...
尝试^[^@]*$
用任何东西替换。或者,grep
使用您的正则表达式的文件并将结果重定向到一个新文件中。