如何替换文本,例如:c2stackoverflow to
span style="color:#ffdc50">stackoverflow</span>'
我尝试这样做:
<?php
$string = "c2stackoverflow";
$string = preg_replace("/c2([A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ])+$/", '<span style="color:#ffdc50">$1</span>', $string);
echo $string;
但输出是:
<span style="color:#ffdc50">w</span>
答案 0 :(得分:2)
由于您的原始正则表达式(通过其最终$
)显示您要在c2
之后替换整个重新映射的字符集,因此您可以简单地使用:< / p>
$string = preg_replace("/c2(.*)$/", '<span style="color:#ffdc50">$1</span>', $string);
请注意,我已将+
替换为*
,因此即使像c2
这样的字符串也会被<span style="color:#ffdc50"></span>
替换。
答案 1 :(得分:1)
只需替换这样的加号:
$string = preg_replace("/c2([A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+)$/", '<span style="color:#ffdc50">$1</span>', $string);