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

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

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