Regex 有没有办法用grep从正则表达式组中排除最后出现的字符
我想编写一个与以下行匹配的正则表达式:Regex 有没有办法用grep从正则表达式组中排除最后出现的字符,regex,bash,grep,Regex,Bash,Grep,我想编写一个与以下行匹配的正则表达式: int func ( int argument, char* str) for( int i = 0; i < 25; i++) if( true ) 但它不起作用,因为括号之间可能有有效的空格 我的问题是:有没有办法从正则表达式组中排除最后出现的字符 在literal中,我希望匹配在左括号后面有空格或右括号前面有空格的行 您可以交替使用此grep: grep '([[:blank:]]\|[[:blank:]])' file 在默认的grep
int func ( int argument, char* str)
for( int i = 0; i < 25; i++)
if( true )
但它不起作用,因为括号之间可能有有效的空格
我的问题是:有没有办法从正则表达式组中排除最后出现的字符
在literal中,我希望匹配在左括号后面有空格或右括号前面有空格的行
您可以交替使用此grep
:
grep '([[:blank:]]\|[[:blank:]])' file
- 在默认的
regex模式(BRE)中,不需要退出grep
和(
)
匹配空格或制表符[[:blank:][]
- 您需要在BRE中转义
|
grep -E '[^\(]\( [^ ] \)'
grep '([[:blank:]]\|[[:blank:]])' file