Регулярные выражения
Любое регулярное выражение состоит из двух частей:
- Паттерн (шаблон что ишем/что удалить и т.п.)
- Флаги
| Флаг | Описание |
|---|---|
| i | Если мы хотим что-то найти вне зависимости от регистра |
| g | Когда ищем сразу несколько вхождений |
| m | Включаем многострочный режим |
Создание регулярного выражения при помощи конструктора
Это классический способ создания которым почти никогда не пользуются
new RegExp('pattern', 'flags');
Укороченный вариант создания регулярного выражения
/patter/f
Ищем все маленькие буквы ‘n’
const ans = prompt('Введите ваше имя');
const reg = /n/gi;
console.log(ans.search(reg));
Метод search возвращает номер символа первого совпадения.
Метод match возвращает массив найденных результатов.
const ans = 'AnnNn';
const reg = /n/gi;
console.log(ans.match(reg));
["n", "n", "N", "n"]
Метод replace заменяет все вхождения
const pass = prompt('Password');
console.log(pass.replace(/./g, "*"));
console.log('12-34-56'.replace(/-/g, ':'));
Метод test
Данный метод возвращает определяет удовлетворяет ли регулярное вырожение строке. Возвращает true или false
Классы регулярных выражений
| Класс | Описание |
|---|---|
\d | Цифры |
\w | Буквы |
\s | Пробелы |
Обратные классы
Если нам требуется найти не цифры, не буквы, не пробелы.
| Класс | Описание |
|---|---|
\D | Не цифры |
\W | Не буквы |
\S | Не пробелы |