1

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

我试过这样的表达:MachineABC["Test"]*. 但它没有按预期工作。这种情况下正确的正则表达式是什么?

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

4

1 回答 1

3

该正则表达式将是:

^MachineABC(Test)?$

如果您想将任何部分设为可选,只需将其与?通知程序分组以使其可选(1 或 0 个匹配项)。

使用 egrep 进行测试:

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

echo "MachineABC" | egrep '^MachineABC(Test)?$'
MachineABC
于 2013-10-10T10:53:07.377 回答