Если вы хотите заменить Unicode old pattern
на new pattern
, вы должны написать:
$text = preg_replace('/\bold pattern\b/u', 'new pattern', $text);
Таким образом, ключ здесь - u
модификатор
Примечание: ваш сервер php version
shoud будет как минимум PHP 4.3.5
, как указано здесь php.net | Модификаторы паттерна
u (PCRE_UTF8) Этот модификатор включает дополнительные функции PCRE, которые несовместимы с Perl. Строки шаблонов рассматриваются как UTF-8. Этот модификатор доступен с PHP 4.1.0 или выше в Unix и с PHP 4.2.3 на win32. UTF-8 справедливость шаблона проверяется с PHP 4.3.5.
blockquote>Спасибо
AgreeOrNot
, которые дают мне этот ключ здесь preg_replace сопоставить целое слово в арабскомЯ пробовал это, и он работал в localhost, но когда я пытаюсь его на удаленном сервере, это не сработало, и я обнаружил, что php.net начинает использовать модификатор
u
в PHP 4.3.5. , Я обновляю версию php и работает. Важно знать, что этот метод очень полезен для арабских пользователей (عربي), потому что, как я считаю, unicode - лучший кодировщик для арабского языка, а замена не будет если вы не используете модификатор
u
, см. следующий пример, он должен работать с вами
$text = preg_replace('/\bمرحبا بك\b/u', 'NEW', $text);