Home » Программирование » Короткие заметки » О регулярных выражениях с кириллицей в PHP

О регулярных выражениях с кириллицей в PHP

В PHP много функций для работы с регулярными выражениями, но если вы применяете их к кириллическим и любым другим символам за пределами ASCII в формате Unicode, это в обязательном порядке нужно указывать в ключах режима регулярного выражения.

Я столкнулся с этим случайно, когда пытался перебрать регекспом свои имя, отчество и фамилию на предмет наличия небуквенных символов. Каково же было моё удивление, когда preg_replace упорно портил моё отчество, заменяя целых 3 буквы знаками вопроса, а имя и фамилию почему-то не трогал. Только добавив модификатор Unicode «/u», я получил правильный результат:

preg_replace('/[^A-Za-zА-Яа-яЁё]/u', '', $_POST['name']);

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Do NOT follow this link or you will be banned from the site!