Найдите в тексте именно то, что вам нужно, с помощью регулярных выражений

.test() принимает регулярное выражение, применяет его к строке и возвращает логическое значение.
.replace() заменяет подстроку другой подстрокой и возвращает измененную строку.
.match() извлекает фактические совпадения, которые вы нашли в возвращаемом массиве.

Шпаргалка

Соответствие буквальным строкам

/test/ ищет буквальное совпадение строки.

const str = 'test';
const reg = /test/;
reg.test(str); // return true

ИЛИ (|) в буквальных строках

Найдите несколько шаблонов с помощью оператора ИЛИ |.

const str = 'second';
const reg = /first|second/;
reg.test(str); // return true

Игнорировать регистр (i)

Используйте i для поиска без учета регистра.

const str = 'firstClass';
const reg = /firstclass/i;
reg.test(str); // return true

Использовать глобальный (g)

Используйте g для поиска или извлечения шаблона более одного раза.

const str = 'test test';
const reg = /test/g;
str.match(reg); // return ['test', 'test']

Сопоставьте что-либо с подстановочным знаком (подстановочный знак, точка, точка)

Подстановочный знак . соответствует любому одному символу.

const str = 'The string is strong';
const reg = /str./;
str.match(reg); // return ['stri']

Сопоставьте один символ с несколькими возможностями []

Найдите буквальный шаблон с некоторой гибкостью с классами символов, используя /[abei]/.

const str = 'The tree is strong';
const reg = /t[hr]e/gi;
str.match(reg); // ['The', 'tre']

Сопоставьте буквы алфавита

Найдите буквенный алфавитный шаблон с помощью [a-z].

const str = 'The';
const reg = /[a-z]+/;
str.match(reg); // ['he']

Соответствие одиночным символам не указано

Используйте [^ae] для наборов символов, которым вы не хотите соответствовать.

const str = 'Test';
const reg = /[^ae]/;
reg.test(str); // true

Соответствие символов, встречающихся один или несколько раз

Используйте + для сопоставления символов, которые встречаются хотя бы один раз и могут повторяться.

const str = 'the text, the apple';
const reg = /the+/g;
str.match(reg); // ['the', 'the']

Соответствует символам, которые встречаются ноль или более раз

Звездочка * соответствует символам, которые встречаются ноль или более раз.

const str = 'greedy';
const reg = /e*/;
reg.test(str); // true

Сопоставление начальных шаблонов строк

Каретка ^ используется для поиска шаблонов в начале строк.

const str = 'Test';
const reg = /^A/i;
reg.test(str); // false

Соответствие шаблонам конечной строки ($)

Используйте $ для поиска шаблонов в конце строк.

const str = 'test-id-sDb4r';
const reg = /-\w{5}$/;
const result = str.replace(reg, ''); // 'test-id'

Подберите все буквы и цифры

Используйте \w как сокращение для классов символов, которые равны /[A-Za-z0–9_]/. Включите символ подчеркивания (_).

const str = 'sDb4r';
const reg = /\w/;
reg.test(str); // true

Подбирайте все, кроме букв и цифр

\W поиск противоположен буквенно-цифровому и равен /[^A-Za-z0–9_]/.

const str = 'sDb4r?';
const reg = /\W/;
str.match(reg); // ['?']

Соответствовать всем числам / d

/d используется для поиска цифровых символов и равен /[0–9]/.

const str = 'sDb4r?';
const reg = /\d/;
str.match(reg); // ['4']

Сопоставьте все нечисловые

/D используется для поиска нецифровых символов и равен /[^0-9]/.

const str = 'sDb4r?';
const reg = /\D/g;
str.match(reg); //['s', 'D', 'b', 'r', '?']

Соответствовать пробелу \s

Ищите пробелы с помощью \s. Этот шаблон соответствует не только пробелам, но и символам возврата каретки, табуляции, перевода страницы и новой строки. Это похоже на \r\t\f\n\v.

const str = 'test string';
const reg = /\s/;
str.replace(reg, ' new '); // 'test new string'

Соответствовать непробельным символам \S

Ищите непробельные символы с помощью \S. Этот шаблон не будет соответствовать пробелам, возврату каретки, табуляции, подаче формы и символам новой строки. Это похоже на ^ \r\t\f\n\v.

const str = 'test string';
const reg = /test\S/;
reg.test(str); // false

Найти символы с отложенным соответствием (?)

? находит наименьшую возможную часть строки, удовлетворяющую шаблону регулярного выражения.

const str = '<h1>Title</h1>';
const reg = /<.*?>/;
str.match(reg); // ['<h1>']

Укажите верхнее и нижнее количество совпадений

Вы можете указать нижнее и верхнее количество шаблонов с помощью спецификаторов количества. Спецификаторы количества используются в фигурных скобках: ({}). Вы помещаете два числа между фигурными скобками для нижнего и верхнего числа выкройки.

const str = 'google';
const str1 = 'gooogle';
const str2 = 'gogle';
const reg = /go{2,3}gle/;
reg.test(str); // true
reg.test(str2); // false 
reg.test(str1); // true

Укажите только меньшее количество совпадений

Чтобы указать меньшее количество шаблонов, оставьте первое число после запятой.

const str = 'google';
const str1 = 'gogle';
const str2 = 'goooogle';
const reg = /go{2,}gle/;
reg.test(str); // true 
reg.test(str1); // false
reg.test(str2); // false

Укажите точное количество совпадений

Чтобы указать определенное количество шаблонов, просто поместите это число в фигурные скобки.

const str = 'heel';
const str1 = 'heeeeel';
const reg = /he{2}l/
reg.test(str); // true
reg.test(str1); // false

Проверить все или ничего

Иногда шаблоны, которые вы хотите найти, могут иметь части, которые могут существовать, а могут и не существовать.

const str = 'favourite';
const str1 = 'favorite';
const str2 = 'faver';
const reg = /favou?/;
reg.test(str); // true
reg.test(str1); // true
reg.test(str2); // false

Положительный (?=…) и отрицательный (?!…) прогноз

Lookaheads - это шаблоны, которые сообщают JavaScript, что нужно смотреть вперед в вашей строке, чтобы проверить шаблоны в дальнейшем.

const str = 'abs123';
Positive 
const reg = /(?=\w{2,6})/
reg.test(str); // true
Negative
const reg1 = /(?=[a-z]{3})(?!\d{3})/
reg1.test(str); // true

Спасибо за прочтение! Надеюсь, это поможет вам.