Регулярные выражения — это шаблоны, используемые для сопоставления последовательностей символов в строках. Шаблон состоит из односимвольных или многосимвольных литералов, операторов или конструкций.
Используя регулярные выражения для полей типа Строка можно настроить маску. С помощью нее будет проверяться корректность информации, введённой пользователем. Обратите внимание, в маске доступны только выражения без флагов.
Можно также указать текст сообщения, которое будет отображаться при вводе данных в формате, не удовлетворяющем требованиям регулярного выражения.
Подробнее о синтаксисе регулярных выражений можно прочитать в документации MDN Web Docs.
В каждом примере, приведенном ниже, содержится:
‘^’ — начало строки,
‘$’ — конец строки,
‘?’ в ‘()?’ означает, что все, что находится в (), может повторяться 0 или 1 раз. Если не добавить это условие, то в случае, если поле не обязательно и не заполнено, будет возникать сообщение об ошибке.
Примеры регулярных выражений
Проверка серии паспорта
^([0-9]{2}\s{1}[0-9]{2})?$
Разберем выражение:
- [0-9]{2} — позволяет ввести две любые цифры.
- \s{1} — позволяет ввести один пробел.
- [0-9]{2} — позволяет ввести две любые цифры.
Пример: 12 34
Проверка номера паспорта
^([0-9]{6})?$
Разберем выражение:
- [0-9]{6} — позволяет ввести 6 любых цифр.
Пример: 123456
Проверка кода подразделения
^([0-9]{3}[-]{1}[0-9]{3})?$
Разберем выражение:
- [0-9]{3} — позволяет ввести 3 любые цифры.
- [-]{1} — позволяет ввести один символ ‘-’.
- [0-9]{3} — позволяет ввести 3 любые цифры.
Пример: 123-456
Проверка ИНН
^(([0-9]{12})|([0-9]{10}))?$
Разберем выражение:
- [0-9]{12} — позволяет ввести 12 любых цифр.
- [0-9]{10} — позволяет ввести 10 любых цифр.
- (a|b) — позволяет ввести либо левую часть выражения, либо правую.
Пример:
- 123456789012
- 1234567890
Проверка ОГРН
^([0-9]{13})?$ — позволяет ввести 13 любых цифр.
Проверка КПП
^([0-9]{9})?$ — позволяет ввести 9 любых цифр.
Проверка номера частного транспортного средства
^([АВЕКМНОРСТУХ]{1}[0-9]{3}[АВЕКМНОРСТУХ]{2}[0-9]{2,3})?$
Пример:
- А012ВУ18
- А012ВЕ159
Проверка корректности названия файла
^([^\\/:*?"<>|]+[.]{1}[^\\/:*?"<>|]+)?$
Разберём выражение:
- [^\\/:*?"<>|] — позволяет ввести любые символы, кроме тех, которые написаны после «^». То есть, символы, входящие в диапазон, указывают на отрицание.
- [a]+ — позволяет ввести символы в скобках один или несколько раз. Вы можете задать любую комбинацию символов, кроме указанных в скобках.
- [.]{1} — позволяет ввести одну точку.
Пример: Документ1.docx
Проверка корректности пути до файла
^(([A-Z]:\\){1}[^\/:*?"<>|]+)?$
Разберём выражение:
- ([A-Z]:\\){1} — позволяет ввести одну заглавную латинскую букву и последовательность символов «:\» (первый символ «\» сообщает системе, что следующая обратная косая черта не является специальным символом).
- + — позволяет ввести символы в скобках один или несколько раз. Поскольку в начале выражения указан символ «^», вы можете задать любую комбинацию символов, кроме указанных в скобках.
Пример:
- C:\Windows\System32\calc.exe;
- Z:\test.txt.