Grep完全匹配返回与句点,空格,连字符等匹配

时间:2015-06-13 01:37:41

标签: bash shell grep

... | grep -w "2015"
2015%kjlia
hi 2015.halteriafu
etc-2015
...

我希望我的grep能够返回" 2015"完全匹配。

在原始数据中,2015年之前和之后可以有任何字符。 以上只省略了几行,如..yguj2015vj ..与2015年相邻的字母数字字符。

3 个答案:

答案 0 :(得分:2)

摆脱-w。该标志搜索整个单词,其中单词2015未被任何字母数字字符包围(完全如您所述)。

或使用-x来匹配整行。

答案 1 :(得分:1)

试试这个:

egrep '(^| )2015( |$)' file.txt

它发现“2015”被空格包围。虽然它没有找到被标签包围的“2015”。

答案 2 :(得分:1)

这可能是你想要的:

grep -E '(^|[[:space:]])2015([[:space:]]|$)' file

如果没有编辑您的问题以澄清。