如果你想用你替换 Unicode old pattern
,new pattern
你应该写:
$text = preg_replace('/\bold pattern\b/u', 'new pattern', $text);
所以这里的关键是u
修饰符
注意:您的服务器php version
至少应该是PHP 4.3.5
正如这里提到的php.net | 模式修饰符
u (PCRE_UTF8) 此修饰符打开与 Perl 不兼容的 PCRE 的附加功能。模式字符串被视为 UTF-8。此修饰符在 Unix 上的 PHP 4.1.0 或更高版本以及 win32 上的 PHP 4.2.3 中可用。自 PHP 4.3.5 起检查模式的 UTF-8 有效性。
谢谢AgreeOrNot
谁给我那个键preg_replace 匹配阿拉伯语中的整个单词
我试过了,它在 localhost 中工作,但是当我在远程服务器上尝试它时它不起作用,然后我发现 php.netu
在 PHP 4.3.5 中开始使用修饰符。,我升级了php版本,它可以工作
重要的是要知道这种方法对阿拉伯语用户(عربي)非常有帮助,因为 - 我相信 - unicode 是阿拉伯语的最佳编码,如果您不使用u
修饰符,替换将不起作用,请参阅下一个示例它应该和你一起工作
$text = preg_replace('/\bمرحبا بك\b/u', 'NEW', $text);