写一个grep风格的正则表达式

时间:2015-03-27 02:23:57

标签: regex regex-negation

编写egrep风格的正则表达式时遇到问题。

我有几个词,比如“试用”,“糕点”等等。

如何编写与“try”匹配的egrep风格正则表达式,但不在这些单词中?

我尝试了\btry\b正则表达式,但它似乎无效。

我很感激任何帮助。

2 个答案:

答案 0 :(得分:0)

您必须使用\b作为字边界。您可以使用这样的正则表达式:

\btry\b

如果您还想要一个ignorecase,可以使用i标志。或者像这样的内联标志:

(?i)\btry\b

<强> Working demo

答案 1 :(得分:0)

egrep regex tutorial中,您可以找到一个示例:

egrep <flags> '<regular expression>' <filename>

然后,检测字边界,

  

egrep符号对是单词边界\<\>,分别表示单词的开头和结尾

因此,使用此正则表达式,将列出包含单词tryTry searchfile.txt 中的所有行(如-i选项进行匹配不区分大小写)。

egrep -i '\<try\>' searchfile.txt