Почему введение - потому что тема очень большая.
📝 Что это и зачем? -
Регулярные выражения позволяют определить соответствует ли переданная строка заданным требованиям. Например, вам нужно написать валидацию полей формы: проверять, что пользователь корректно ввел имя, телефон, email.
📝 То есть, вы создаете "трафарет", в котором указываете, какие символы могут или не могут встретится в строке, сколько их может быть и на каких местах они должны стоять в строке.
🙋♀️ А зачем что-то писать, я просто скопирую из Интернета готовые регулярки и все. В интернете даже есть конструкторы регулярок! - Нужно хотя бы иметь представление, как это работает, понять принцип написания регулярных выражений, чтобы понимать, что вы нашли или сгенерировали или написали именно то, что вам нужно.
✅ Формат и применение в js (именно в js, на других языках тоже можно писать регулярные выражения)
// функция возвращает true, либо false
function checkString(inputString) {
// в regex записываем "трафарет"
const regex = /^[а-яА-Яa-zA-Z]+$/;
// непосредственно проверка строки
return regex.test(inputString);
}
✍️ Части трафарета(самые часто встречающиеся):
символы слева и справа: /^ваше регулярное выражение/
строчные латинские буквы: [a-z]
цифры: [0-9] можно писать как \d
минимум 1 символ: на это указывает знак + в выражении выше
длина строки, минимальное и максимальное значения: {2,10}
👌 Примеры
Имя: не менее 1 символа, только буквы, строчные или прописные, русские или латинские
Выражение:
/^[а-яА-Яa-zA-Z]+$/Телефон: символов не менее 7, не более 10, первый символ 8 или +7, возможны скобки и символ "-"
Выражение:
^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$Email: начинается с букв или цифр, содержит @, после него буквы или цифры, далее "." потом только буквы(в конце email цифр уже нет)
Выражение:
/^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-z]+$/#js