sed 如何做“或”

sed 如何做“或”

我有以下两行工作正常:

/\.to <\=/ s/<\=/be <\=/
/\.to_not <\=/ s/<\=/be <\=/

我想将它们结合起来并且我尝试过:

/\.to( |_not )<\=/ s/<\=/be <\=/

但它不匹配。我应该改变什么?

我也尝试过/\.to(\s|_not )<\=/ s/<\=/be <\=/

答案1

在 sed 中,您必须转义括号 和|

/\.to\( \|_not \)<\=/ s/<\=/be <\=/

或者,在您的示例中,您可以使用?(也转义):

/\.to\(_not\)\? <\=/ s/<\=/be <\=/

相关内容