


Регулярные выражения PHP
Всем привет!
Имеется такой вот код: preg_match("/^[а-я А-Я]{2,50}+$/u", $_POST['lastname'])
который разрешает только русские символы от 2 до 5 (точки, запятые и т д не пропускает), как сделать так, что бы пробелы были запрещены?
Решил вопрос)
Вот так надо: preg_match("/^[а-яА-Я] { 2,50 } +$/u", $_POST['lastname'])
просто убрать пробелы?
/^[а-яА-Я] {2,50}$/u
плюс не нужен, ты уже вместо этого используешь диапазон от 2 до 50 символов. плюс означает от одного и до сколько угодно. лишние пробелы тоже не нужны, это стандарт
// upd: понял, это конченый ресурс так форматирует
Вот этот инструмент может помочь быстрее в понимании регекспов:
https://regex101.com/
там наглядно можно проверять как работает то, что получается
Плюс после фигурных скобок выглядит странно. Если его убрать, то, видимо, будет то, что ты хочешь.
А почему ты решил, что не бывает фамилии из одной буквы? Какой-нибудь Ким Ю поспорил бы.
Надеюсь, ты не считаешь, что у всех людей на Земле есть фамилия?
И почему ограничение в 50 символов?