我正在尝试做
$text = preg_replace('/\bمرحبا بك\b/', 'NEW', $text);
但它不起作用,我认为这个功能不支持阿拉伯语
我正在尝试做
$text = preg_replace('/\bمرحبا بك\b/', 'NEW', $text);
但它不起作用,我认为这个功能不支持阿拉伯语
如果您的文本采用 UTF-8 编码,请将'u' 修饰符附加到您的正则表达式模式以支持 Unicode。
$text = preg_replace('/\bمرحبا بك\b/u', 'NEW', $text);
不要\b
在正则表达式的末尾添加 a 。当您将代码更改为以下内容时,匹配应该可以正常工作:
$text = preg_replace('/\bمرحبا بك/', 'NEW', $text);
您也不能\b
在末尾使用,因为您要匹配的单词中有空格。\b
当您尝试匹配的部分中有非单词字符时,无法匹配任何内容。
就拿str_replace。不需要正则表达式。
$text = 'hello bمرحبا بك world';
echo str_replace('bمرحبا بك', 'NEW', $text);