Регулярные выражения - это шаблоны, используемые для сопоставления последовательностей символов в строках.
Их можно использовать при сборе данных пользователя. Например, для проверки ввода номера телефона или почты.
Ниже представлен список наиболее используемых регулярных выражений:
Номер телефона
^(\+)?((\d{2,3}) ?\d|\d)(([ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$
Номер телефона (Россия)
^((\+7|7|8)+([0-9]){10})$
Email
^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$
Имя пользователя (2-20 символов, первая буква, допустимы цифры)
^[a-zA-Z][a-zA-Z0-9-_\.]{1,20}$
Дата в формате YYYY-MM-DD
(19|20)\d\d-((0[1-9]|1[012])-(0[1-9]|[12]\d)|(0[13-9]|1[012])-30|(0[13578]|1[02])-31)
Дата в формате DD/MM/YYYY
(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d
Дата в формате DD.MM.YYYY
/^(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[0-2])\.(\d{4})$/
Время в формате HH:MM:SS
^([0-1]\d|2[0-3])(:[0-5]\d){2}$
Также с помощью регулярных выражений можно проверять данные, записанные в переменную.
Ниже пример использования кода для проверки даты:
regExp = /^(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[0-2])\.(\d{4})$/; regExp.test(user.date)
В пример происходит проверка того, что в переменную записана любая дата в формате DD.MM.YYYY.
Сначала в переменную regExp записываем правило для проверки выражения. Далее через функцию regExp.test() проверяем, соответствует ли значение user.date заданному регулярному выражению.
В результате вычислений получаем true или false.