if(mb_eregi("\b{$value}\b",$tmp))
{
$has_fw++;
$tmp = mb_eregi_replace("\b({$value})\b","***",$tmp);
}
我无法在网上找到有关此错误的任何信息。是什么导致了这个错误?
尝试:
$match = sprintf('\b%s\b', $value);
$capture_match = sprintf('\b(%s)\b', $value);
if (mb_eregi($match, $tmp))
{
$has_fw++;
$tmp = mb_eregi_replace($capture_match, '***', $tmp);
}
在正则表达式中使用 {} 会使函数认为您正在尝试查找重复值,而您似乎并不打算将 {} 用作正则表达式运算符,而是打算将其计算为 $value,这不是正则表达式内部的情况。