我正在研究一个单词检查员。 我有这样的文字:
$str = "Je connais ce con de conémi".
我想替换“con”,如果它是一个完整的单词,而不是另一个单词。
如果我这样做:
preg_replace("/\b(con)\b/i", "###", $str);
结果是:
"Je connais ce ### de ###émi".
康美米受到审查。 这是因为conémi的“é”。
答案 0 :(得分:1)
只需添加u
正则表达式修饰符
preg_replace("/\b(con)\b/iu", "###", $str)
^--- here it is
或替代解决方案是使用PCRE unicode字符:
preg_replace("/(?<=\p{Z}|\p{P}|^)con(?=\p{Z}|\p{P}|$)/i", "###", $str);