我使用此类正则表达式$msg = preg_replace('/<b>(\w)<\/b>/', '9999', $msg);
来替换<b>test</b>
,但不会替换它。为什么呢?
答案 0 :(得分:5)
您错过了数量令牌。这只会匹配<b>
标记之间的一个字符长字符串。
$msg = preg_replace('/<b>(\w*)<\/b>/', '9999', $msg);
答案 1 :(得分:0)
试试这个
$msg = preg_replace('#<b>(\w)*<\/b>#', '9999', $msg);
答案 2 :(得分:0)
您的\w
不匹配。我现在没有找到我的正则表达式手册,但使用类似.*
的内容。
答案 3 :(得分:0)
注意\ w +
之后的加号 $msg = preg_replace('/<b>(\w+)<\/b>/', '9999', $msg);