Задать вопрос
@hovitox790

Почему регулярное выражение может не работать?

Добрый день, использую регулярное выражение:

echo preg_match('/^[a-zA-Z\ \-]{2,20}$|^[а-яА-Я\ \-]{2,20}$/', 'фывв');
echo preg_match('/^[a-zA-Z\ \-]{2,20}$|^[а-яА-Я\ \-]{2,20}$/', 'ооооооооооо');


5e7b11c169620249611787.png
5e7b11e7c2843845348591.png

Но php почему то возвращает возвращает статус проверки строки false, хоть regex101 возвращает true. Подскажите, что может быть не так?
  • Вопрос задан
  • 58 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
twobomb
@twobomb
Добавь u
echo preg_match('/^[a-zA-Z\ \-]{2,20}$|^[а-яА-Я\ \-]{2,20}$/u', 'ооооооооооо');

чтобы обрабатывать как utf-8 строку
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы