正则表达式中的or用|分隔,是从左到右进行匹配的,因此当多个or条件存在时,它们的顺序决定了匹配的优先级。例如,若pattern为"foo|foobar",则会先匹配"foo",只有在"foo"不存在时才会去匹配"foobar"。为避免这种情况,可以使用括号来明确or条件的优先级,例如"(foo|foobar)",则会先匹配"foo"与"foobar"的优先级相同。|foobar",则会先匹配"foo",只有在"foo"不存在时才会去匹配"foobar"。为避免这种情况,可以使用括号来明确or条件的优先级,例如"(foo|foobar)",则会先匹配"foo"与"foobar"的优先级相同。|foobar)",则会先匹配"foo"与"foobar"的优先级相同。||
上一篇:awk中的条件语句不按预期工作
下一篇:awk中的字段分隔符