dzheka3d
@dzheka3d

Почему появляется ошибка в регулярное выражение при пробеле?

Всем привет! Буквально ни с того ни с сего, ничего не меняя в коде перестало работать регулярное выражение
Выдает вот такую ошибку:
E_WARNING : type 2 -- preg_match(): Compilation failed: range out of order in character class at offset 19
preg_match("/^[A-zА-яёЁ0-9_-\s]{3,50}$/iu", 'Морковь');

Экспериментальным путем выяснил, что это из-за пробела в шаблоне, но каким бы я его способом не добавлял " " или "\s" ошибка не исчезает.
Поэтому два вопроса, что могло послужить причиной появляения ошибки (код не менялся, а раньше работал) и что это вообще за ошибка?
  • Вопрос задан
  • 3189 просмотров
Решения вопроса 2
DevMan
@DevMan
Defman21
@Defman21
Экранизируй "-" после "_", иначе это выглядит как "Range between '_' and '\s'".
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽