我需要更改字符串中围绕某些内容的元素,保持内容不变。我是用正则表达式来做的,但是当我用位置参数($1)替换时,它只使用第一个匹配项。
例如,如果我有这个字符串:
<strong>I want</strong> to change <i>this</i> text,
but <u>I can't</u>. <div class="question">Why?</div>.
我想把它改成:
<strong>I want</strong> to change <i>this</i> text,
but <u>I can't</u>. <div class="question">Why?</div>.
但我只能得到:
<strong>I want<strong> to change <strong>this<strong> text,
but <strong>I can't<strong>. <strong>Why?<strong>.
我正在使用以下regex:
\x26lt;(.*?)\x26gt;
(在全球范围内,并将其替换为“
<$1>
“”
我想问题是我不知道会找到多少个匹配项,以及如何引用每个匹配项。也许在Perl中,我可以使用$+,但这不起作用。我用雅虎管道的regex模块来做这个。它应该非常类似于php implemenations,afaik。
如何在Yahoo Pipes中分别使用每个匹配项?