是否有一个好的免费工具可以搜索文件以匹配正则表达式?
我想搜索特定扩展名的所有文件以匹配此表达式:^ := '([a-z0-9]{3})'$
我还希望它返回(或甚至更好地跳转到)匹配的行。
有人知道这样的工具吗?
答案1
特工搜捕会做的。
答案2
另请查看AstroGrep,非常棒的小程序,可以实现这一点。
答案3
我想你会想做这样的事情:
find / -name *EXTENSION -exec grep "^ := '([a-z0-9]{3})'$" {} \;
它会搜索整个驱动器 ( /
) 以查找以 结尾的任何文件EXTENSION
,然后grep
使用您的模式对该文件运行。您可以grep
在其中插入任何标志以获得更具体的行为,但默认情况下,它会打印出文件名及其匹配的行。
正如丹所建议的,您可以进一步将其与之结合起来sed
以实际操作匹配的文件。
答案4
sed
(“流编辑器”)将做到这一点。他们有适用于 Windows 的 Sed以及对于 linux (如果它尚未在默认安装中,它应该在你的包管理器中。