2024-10-03 11:22:30 发布
网友
以下三种输出需要一个ansible正则表达式:
输入1:aa::bb::cc 输出1:aa::cc 输入2:bb::aa::cc 输出2:aa::cc 输入3:aa::cc::bb 输出3:aa::cc
aa::bb::cc
aa::cc
bb::aa::cc
aa::cc::bb
我已经写了下面的regexp.但是额外的双冒号仍然存在
例如: {{ aa::bb::cc | regexx_replace('bb') }}-->;输出为:aa::::cc
{{ aa::bb::cc | regexx_replace('bb') }}
aa::::cc
这是您的regexp:(::b+|b+::)
(::b+|b+::)
它将匹配::后跟一个或多个b或一个或多个b后跟::,因此它将使用双冒号,无论它们是在b前面还是后面。当它在aa::bb::cc中看到::bb::时,其中只有一个匹配,结果将是aa::cc(因此第二对冒号仍然存在)
::
b
::bb::
这是您的regexp:
(::b+|b+::)
它将匹配
::
后跟一个或多个b
或一个或多个b
后跟::
,因此它将使用双冒号,无论它们是在b
前面还是后面。当它在aa::bb::cc
中看到::bb::
时,其中只有一个匹配,结果将是aa::cc
(因此第二对冒号仍然存在)相关问题 更多 >
编程相关推荐