简单地说:
echo "xxxxx Tyyy zzzzz" | egrep "\byyy\b"
(不匹配,这是正确的)
echo "xxxxx T-yyy zzzzz" | egrep "\byyy\b"
xxxxx T-yyy zzzzz
我不希望它像在第二个表达式中那样匹配,请告知我如何实现这一点,谢谢。
答案 0 :(得分:2)
您可以使用:
echo "xxxxx T-yyy zzzzz" | egrep "(^|[^-])\byyy\b([^-]|$)"
其中(^|[^-])\byyy\b([^-]|$)
将匹配LHS上的开始或非连字符以及匹配单词yyy
的RHS上的结尾或非连字符。