Изучите основные шаблоны регулярных выражений с помощью фрагментов кода и пояснений, которые помогут вам эффективно решать задачи обработки текста. Расширьте свои возможности кодирования и раскройте весь потенциал регулярных выражений!

Регулярные выражения (регулярные выражения) — это мощный инструмент для сопоставления с образцом и обработки строк в JavaScript. Они обеспечивают краткий и гибкий способ поиска, сопоставления и обработки текстовых данных. В этой статье мы рассмотрим 20 часто используемых шаблонов регулярных выражений в JavaScript. Каждый шаблон будет сопровождаться фрагментом кода и подробным объяснением того, как шаблон регулярного выражения идентифицирует определенные шаблоны в строке. Освоив эти шаблоны регулярных выражений, вы сможете справляться с широким спектром задач обработки текста в коде JavaScript.

Соответствие цифр:

Шаблон: /\d/
Объяснение:Этот шаблон соответствует любой отдельной цифре в строке.

const regex = /\d/;
console.log(regex.test("Hello123World")); // Output: true
console.log(regex.test("HelloWorld")); // Output: false

Сопоставление символов слова:

Шаблон: /\w/
Объяснение:Этот шаблон соответствует любому символу слова (буквенно-цифровому символу или символу подчеркивания) в строке.

const regex = /\w/;
console.log(regex.test("Hello_World123")); // Output: true
console.log(regex.test("@#%$")); // Output: false

Соответствие пробелам:

Шаблон:/\s/
Объяснение.Этот шаблон соответствует любому пробелу (пробелу, табуляции или новой строке) в строке.

const regex = /\s/;
console.log(regex.test("Hello\tWorld")); // Output: true
console.log(regex.test("HelloWorld")); // Output: false

Соответствие определенным символам:

Шаблон: /[aeiou]/
Объяснение:Этот шаблон соответствует любой гласной букве (a, e, i, o или u) в строке.

const regex = /[aeiou]/;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("World")); // Output: false

Сопоставление отрицательных символов:

Шаблон:/[^aeiou]/
Объяснение:Этот шаблон соответствует любому символу, который не является гласным в строке.

const regex = /[^aeiou]/;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("World")); // Output: true

Сопоставление повторений:

Шаблон: /a+/
Объяснение.Этот шаблон соответствует одному или нескольким вхождениям символа «а» в строку.

const regex = /a+/;
console.log(regex.test("caaaat")); // Output: true
console.log(regex.test("ct")); // Output: false

Соответствие необязательным символам:

Шаблон: /b?/
Объяснение.Этот шаблон соответствует нулю или одному вхождению символа «b» в строку.

const regex = /b?/;
console.log(regex.test("bat")); // Output: true
console.log(regex.test("cat")); // Output: true

Сопоставление определенных вхождений:

Шаблон:/c{2}/
Объяснение.Этот шаблон соответствует ровно двум вхождениям символа "c" в строку.

const regex = /c{2}/;
console.log(regex.test("cct")); // Output: true
console.log(regex.test("ct")); // Output: false

Соответствие диапазону символов:

Шаблон:/[A-Z]/
Объяснение:Этот шаблон соответствует любой прописной букве от A до Z в строке.

const regex = /[A-Z]/;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("hello")); // Output: false

Соответствие любому символу:

Шаблон: /./
Объяснение:Этот шаблон соответствует любому символу (кроме новой строки) в строке.

const regex = /./;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("\n")); // Output: false

Привязка к началу:

Шаблон: /^H/
Объяснение.Этот шаблон соответствует букве «H», только если она стоит в начале строки.

const regex = /^H/;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("World")); // Output: false

Привязка до конца:

Шаблон: /o$/
Объяснение. Этот шаблон соответствует букве «о», только если она стоит в конце строки.

const regex = /o$/;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("World")); // Output: false

Соответствие точному слову:

Шаблон:/\bhello\b/
Объяснение:Этот шаблон соответствует слову "привет" как целому слову в строке.

const regex = /\bhello\b/;
console.log(regex.test("Say hello to everyone")); // Output: true
console.log(regex.test("Say hellothere")); // Output: false

Сопоставление без учета регистра:

Шаблон:/hello/i
Объяснение.Этот шаблон соответствует слову "привет" без учета регистра в строке.

const regex = /hello/i;
console.log(regex.test("Hello")); // Output: true
console.log(regex.test("World")); // Output: false

Группировка и захват:

Шаблон:/(abc)+/
Объяснение:Этот шаблон сопоставляет одно или несколько вхождений последовательности "abc" в строке и фиксирует ее.

const regex = /(abc)+/;
console.log(regex.test("abcabc")); // Output: true
console.log(regex.test("abc")); // Output: true
console.log(regex.test("acbacb")); // Output: false

Смотреть вперед:

Шаблон: /q(?=u)/
Объяснение:Этот шаблон соответствует букве "q", только если за ним следует буква "u" в строка.

const regex = /q(?=u)/;
console.log(regex.test("quick")); // Output: true
console.log(regex.test("quiet")); // Output: false

Отрицательный прогноз:

Шаблон:/q(?!u)/
Объяснение.Этот шаблон соответствует букве "q", только если за ним не следует буква "u". в строке.

const regex = /q(?!u)/;
console.log(regex.test("quick")); // Output: false
console.log(regex.test("quiet")); // Output: true

Сопоставление с учетом регистра:

Шаблон:/hello/gi
Объяснение.Этот шаблон соответствует слову "hello" глобально и без учета регистра в строке.

const regex = /hello/gi;
const str = "Hello hello";
console.log(str.match(regex)); // Output: ["Hello", "hello"]

Извлечение адресов электронной почты:

Шаблон:/\w+@\w+.\w+/
Объяснение.Этот шаблон соответствует основному адресу электронной почты в строке.

const regex = /\w+@\w+\.\w+/;
console.log(regex.test("Email: [email protected]")); // Output: true
console.log(regex.test("Not an email")); // Output: false

Экранирование специальных символов:

Шаблон: /$/
Объяснение.Этот шаблон соответствует символу доллара ("$") в строке.

const regex = /\$/;
console.log(regex.test("Price: $10")); // Output: true
console.log(regex.test("Price: 10$")); // Output: false

Регулярные выражения — это универсальный инструмент в JavaScript, позволяющий разработчикам выполнять сложные задачи сопоставления шаблонов и обработки строк. Поняв и освоив эти часто используемые шаблоны регулярных выражений, вы сможете раскрыть весь потенциал регулярных выражений и повысить эффективность и результативность своего кода JavaScript при решении задач обработки текста. Поэкспериментируйте с этими шаблонами и адаптируйте их к своим конкретным потребностям. По мере практики вы научитесь использовать регулярные выражения для решения различных задач обработки текста в своих приложениях JavaScript.

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

[Раскрытие информации: эта статья является совместным творением, в котором мои собственные идеи сочетаются с помощью ChatGPT для оптимальной артикуляции.]