我有一个输入文件
RAKESH_ONE
RAKESH-TWO
RAKESH123
RAKESHTHREE
/RAKESH/
FIVERAKESH
456RAKESH
WELCOME123
This is RAKESH
我想获得输出
RAKESH_ONE
RAKESH-TWO
/RAKESH/
This is RAKESH
我想打印与模式RAKESH
匹配的行。如果图案带有前缀或后缀为字母数字,我们应该避免使用它。
答案 0 :(得分:3)
([^a-zA-Z0-9]+|^)RAKESH([^a-zA-Z0-9]+|$)
这将匹配行上没有字母数字前缀或后缀的模式。它与整个行不匹配,但如果与grep
或sed
一起使用,则只能输出所需的行。
<强>更新强>
根据要求,这里是完整的grep
命令。使用-E
选项使用扩展正则表达式:
grep -E "([^a-zA-Z0-9]+|^)RAKESH([^a-zA-Z0-9]+|$)" file.txt