我正在尝试以下查询,但没有成功
grep -nr "[[:alnum:]]+\.[[:alnum:]]+\(\)" .
因此,根据我的逻辑,方法调用将是一个或多个字母数字字符
[[:alnum:]]+
后跟一个点
\.
后跟一个或多个字母数字字符
[[:alnum:]]+
后面是paranthesis(仅适用于void返回类型)
\(\)
但是这个查询不起作用。怎么写这样的查询?
答案 0 :(得分:1)
您需要使用“\ +”而不是“+”,否则它将直接匹配字符“+”。
答案 1 :(得分:1)
grep
提供了几种类型的正则表达式语法
编写的模式是扩展语法,适用于-E
extended-regexp
语法更简单/更好,perl-regexp
非常强大。
grep -nrE "[[:alnum:]]+\.[[:alnum:]]+\(\)" .