@Dreaded

Как составить регулярку проверяющую строку полностью?

Мне нужна регулярка которая допускает строку состоящую только из букв английского и русского алфавита, длиной от 2 до 25 символов. Мой вариант:
"/^[А-Яа-яA-Za-z]{2, 25}/"
Как я это понимаю: сначала строки символы А-Яа-яA-Za-z в количестве от двух до 25.
Но если ввести строку типа sdfsd sdfsdf то preg_match всеравно возвращает true.
Как сделать так что бы регулярка проверяла строку полностью, и не пропускала строки с пробелами, цифрами, и спецсимволами?
  • Вопрос задан
  • 110 просмотров
Решения вопроса 1
lidacriss
@lidacriss
wtf
а окончание строки?
бакс $
/^[А-Яа-яA-Za-z]{2, 25}$/

ну флаги (модификаторы) соответствующие нужны еще :)
i - регистронезависимость, чтобы не писать А-Яа-яA-Za-z, а достаточно было а-яa-z
u - для корректной работы с юникодом
preg_match('/^[a-zа-яё]{2,25}$/iu', $string);

строка типа sdfsd sdfsdf будет true по причине удовлетворенности регулярному выражению. от 2-х до 25 символов от начала строки.
sdfsd от начала сроки имеет длину 5, что подходит под диапазон 2-25
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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