正则表达式与字符串匹配

时间:2013-10-10 10:52:25

标签: regex grep

我需要一个只匹配字符串“MachineABC”和“MachineABCTest”的正则表达式。

我试过这样的表达式:MachineABC [“Test”] *。但它没有按预期工作。这个场景的正则表达式是什么。?

我正在使用grep实用程序进行测试。例如:echo“MachineABCTest”| grep'MachineABC [“Test”] +'。 示例grep返回null。

1 个答案:

答案 0 :(得分:3)

正则表达式将是:

^MachineABC(Test)?$

如果你想让任何部分成为可选部分,只需将其与?通知符分组,使其成为可选部分(1或0匹配)。

使用egrep进行测试:

echo "MachineABCTest" | egrep '^MachineABC(Test)?$'
MachineABCTest

echo "MachineABC" | egrep '^MachineABC(Test)?$'
MachineABC