首页 > 解决方案 > Perl - 替换除最后一次出现的所有内容

问题描述

我有一个字符串,其中包含多次出现的字符串<br />。我想替换所有这些,除了最后一个,没有斜线:<br>

所以,如果我有一个字符串:

A<br />B<br />C<br />D<br />. 

我想要字符串:

A<br>B<br>C<br>D<br />. 

标签: perl

解决方案


您可以使用前瞻断言,该断言要求字符串至少有一个<br />(?=.*<br />)。这是一个例子:

$ perl -pe's|<br />(?=.*<br />)|<br>|g'
A<br />B<br />C<br />D<br />
A<br>B<br>C<br>D<br />

推荐阅读