用正则表达式表示数字

时间:2014-10-30 05:30:31

标签: grep

grep -w "ing_[0-9][0-9][0-9][0-9]"

上面提到的命令正在运行。但是有4位数的简短版本吗?

这不起作用:

grep -w "ing_[0-9]\+ {4}"

2 个答案:

答案 0 :(得分:2)

Grep默认使用Basic Regular表达式。在BRE中,你需要逃避花括号,以便将花括号视为重复量词。

grep -w "ing_[0-9]\{4\}" file

示例:

$ echo 'ing_6786 says' | grep -w "ing_[0-9]{4}"
$ echo 'ing_6786 says' | grep -w "ing_[0-9]\{4\}"
ing_6786 says

答案 1 :(得分:0)

如果您很幸运且grep支持现代( Perl )正则表达式,请尝试-P参数

grep -wP "ing_[0-9]{4}"