PHP连续出现的字符替换为其他参数

时间:2017-06-09 05:59:53

标签: php regex

我有一个像

这样的字符串
sadd*sadasdsdsad*sdadsdasdad*asdsadsadsadasdsdsd*asdasdsadasdasdasdasdasdasd*asdasdadasdsdasd*asdsaddasdasdas*

现在我希望所有连续的*分别替换为<b> & </b>。上面的字符串将变为

sadd<b>sadasdsdsad</b>sdadsdasdad<b>asdsadsadsadasdsdsd</b>asdasdsadasdasdasdasdasdasd<b>asdasdadasdsdasd</b>asdsaddasdasdas*sdfdsfsd

最后一个*没有被替换,因为没有连续的一对星。

1 个答案:

答案 0 :(得分:2)

好像你可以这样做

\*(.+?)((?=$)|\*)
# match a star
# anything else lazily afterwards
# the end of the string
# or another star

并将其替换为<b>$1</b>,请参阅a demo on regex101.com