我是regexp的新手,我相信这是初学者获得输出的小故障。
AB(CD)数字/位数的正则表达式为:[A-Z]+[^a-zA-Z0-9][A-Z]+[^a-zA-Z0-9] [0-9]+[^a-zA-Z0-9][0-9]+
Grep命令是:grep "regexp" xyz.txt
上面的命令没有输出,但是当我使用同一个正则表达式的sublime编辑器时,我得到了所需的结果。尝试使用grep命令进行了多次尝试,唯一一次给出结果的是我从正则表达式中删除了[0-9]+[^a-zA-Z0-9][0-9]+
部分,因为中间有一个空格,但结果不理想。尝试grep -e
和grep --regexp=
,也没有结果。
有人能告诉我出错的地方或此命令的正确语法。非常感激。
编辑:
数据如下所示:
AB(C.D.) nnnnn/nnnnnn
A.B(C.D.) nnnnnn/nnnnn
A.B.(CD) nnnnn/nnnnnn
AB(CD) nnnnn/nnnnnn
AAB(CD) nnnnn/nnnnnn
....
....
further P & C
我只关注AB(CD)nnnn / nnnnnn。真的想学习正确的表达方式。
答案 0 :(得分:2)
使用grep -E将grep切换为特殊模式,以便将表达式计算为ERE(扩展正则表达式),而不是正常的模式匹配。