PHP - многобайтовое регулярное выражение для удаления всех символов, кроме китайских ... пожалуйста, помогите - PullRequest
1 голос
/ 01 декабря 2010

Я пытаюсь взять строку UTF-8, которая выглядит примерно так:

& q |R 隭) R 墢 Lq28} 徫 廵 g'Y 鑽 妽 踒 F

и удалите все, кроме китайских символов, они шестнадцатеричные 4E00-9FA5, и я хотел бы оставить только эти символы встрока.Я попытался взять эту строку, которая оставляет только действительные символы США:

preg_replace('/[^\x20-\x7E]/', '', $str);

этому:

preg_replace('/[^\x4E00-\x9FA5]/u', '', $str);

, но она ничего не выводит .... я что-то упустил?Я не очень хорош с регулярными выражениями

1 Ответ

2 голосов
/ 01 декабря 2010

Вы были очень близки!

preg_replace('/[^\x{4E00}-\x{9FA5}]/u', '', $str);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...