Я пытаюсь получить эту работу некоторое время, но напрасно. Я хочу создать регулярное выражение php, чтобы проверить, имеет ли строка по крайней мере одно число и по крайней мере один из символов среди (_- + = * &)
Это мое регулярное выражение
$result = preg_match('/^(?=.*\d)(?=.*[_-+=*&]).{3,}$/',$pass);
Я получаю следующую ошибку. Предупреждение: preg_match () [function.preg-match]: Ошибка компиляции: диапазон не соответствует порядку в символьном классе со смещением 17 в myfile.php в строке 8
любая помощь ?
-
необходимо экранировать или помещать в начало / конец списка [...]
:
$result = preg_match('/^(?=.*\d)(?=.*[-_+=*&]).{3,}$/',$pass);
Если вы этого не сделаете, -
интерпретируется как оператор диапазона, и если x > y
в [xy]
вы получите эту ошибку.