Регулярное выражение php для проверки русских символов UTF8

preg_match("/^[А-Яа-яЁё]+$/u", $str);

регулярное выражение PHP проверяет, чтобы все символы были только русские. Буква Ё выходит за стандартный диапазон UTF8. Поэтому требуется такая доработка

Комментарии

  1. херня это а не выражение
    надо проверять на нулевое соответствие символам отличным от русских букв, цифр и других знаков, к примеру >>>

    здесь используем отрицание в символьном классе >>> [^]
    прогоняем на все кроме "][}{)(", лат./русс. букв, пробела, цифр, "_.-" и чтобы не было соответствий, то есть вернуло ноль

    if (preg_match("/^[^][}{)(a-zа-яё 0-9_.-]$/im", $_POST['text']) == 0)
    {
    echo 'Текст удачно прошел проверку';
    }
    else
    {
    echo 'Вы использовали недопустимые символы'.'
    '.
    'разрешенные символы: '.'][}{)(a-zа-яё 0-9_.-';
    }

    ОтветитьУдалить
  2. также делаем проверку на соответствие хотя бы одной буквы или цифры
    preg_match("/^[a-zа-яё0-9]$/im", $_POST['login']) == 1

    ОтветитьУдалить

Отправить комментарий

Популярные сообщения