Уроки JavaScript – Шпаргалка по регулярним виразам

У сьогоднішній статті ми розглянемо регулярні вирази в JavaScript, а також побачимо практичні приклади використання регулярних виразів в JavaScript скриптах.

Регулярні вирази бувають досить корисними, і їх можна використовувати практично у всіх своїх скриптах. Але, для цього потрібна практика, тому нижче представлені основні приклади регулярних виразів, які допоможуть вам в цьому.

 

 

Шпаргалка регулярних виразів в JavaScript

 

Скорочений запис пошуку символів

let regex;
regex = /\d/; // відповідає будь-якій цифрі
regex = /\D/; // відповідає будь-якій не цифрі
regex = /\w/; // відповідає будь-якому символу з літерного набору (a-z, A-Z, 0-9, _)
regex = /\W/; // відповідає будь-якому несловесному символу
regex = /\s/; // відповідає будь-якому символу порожнього простору (\r (повернення каретки), \n (новий рядок), \t (табуляція))
regex = /\S/; // відповідає будь-якому символу не порожнього простору

 

 

Відповідність певному рядку

let regex;
regex = /world/; // шукає рядок між слешами (з урахуванням регістру). Відповідає "world", "world123", "123world123", "123world". Не відповідає "worlD", "World"
regex = /world/i; // шукає рядок між слешами (без урахування регістру). Відповідає "world", "World", "123World"

 

 

Символи узагальнення (підстановочні символи)

let regex;
regex = /w.rld/; // Крапка (.) відповідає будь-якому іншому символу, крім символу нового рядка. Відповідає "world", "wyrld", але не "w\nrld"
regex = /w.*rld/; // Знак зірочки (*) відповідає будь-якому символу (символам) нуль або більше разів. Відповідає "world", "wooooorld", "wrld", "wjdjjkkrld"

 

 

Конкретні символи

let regex;
regex = /[qwerty]/;  // відповідає будь-якому символу у квадратних дужках
regex = /[ae]ffect/; // відповідає affect або effect
regex = /[^qwerty]/; // відповідає всьому, крім символів в квадратних дужках

 

 

Діапазони символів

let regex;
regex = /[a-z]/; // відповідає всім маленьким буквам
regex = /[A-Z]/; // відповідає всім великим буквам
regex = /[a-k]/; // відповідає маленьким буквам від a до k (включно)
regex = /[G-Y]/; // відповідає всім заголовним буквам від G до Y (включно)
regex = /[0-9]/; // відповідає всім цифрам
regex = /[4-9]/; // відповідає будь-якій цифрі від 4 до 9 (включно)
regex = /[a-zA-Z]/; // відповідає всім маленьким і прописним буквам
regex = /[^a-zA-Z]/; // відповідає всім не буквам

 

 

Відповідність повторень з використанням квантифікаторів

let regex;
regex = /(world){3}/; // відповідає "worldworldworld"
regex = /world{3}/; // відповідає "worlddd" і "worldddd", але не "worldd"
regex = /\d{3}/; // відповідає 3 цифрам ( «312», «122», «111», «12312321», але не «12»)
regex = /\d{3,5}/; // відповідає цифрам, які зустрічаються від 3 до 5 разів (включно)
regex = /\d{3,}/; // відповідає цифрам, які зустрічаються як мінімум 3 рази

 

 

Відповідність повторень з використанням зірочки і плюса

let regex;
regex = /ab*c/; // відповідає нуль або більше повторенням "b" (відповідає "abc", "abbbbc", "ac")
regex = /ab+c/; // відповідає одному або декільком повторенням «b» (відповідає «abc», «abbbbc», але не «ac»)

 

 

Зіставлення початкових і кінцевих елементів

let regex;
regex = /^[A-Z]\w*/; // відповідає "H", "Hello", але не "hey"
regex = /\w*s$/; // відповідає "cats", "dogs", "avocados", але не "javascript"

 

 

Відповідність границь слова (його положення)

  1. перед першим символом в рядку (якщо перший символ є символом слова)
  2. після останнього символу в рядку, якщо останній символ є символом слова
  3. між двома символами в рядку, де один є символом слова, а інший – не є */
regex = /\bmeow\b/; // відповідає "hey meow lol", "hey:meow:lol", але не "heymeow lol"

 

 

Альтернативна відповідність

let regex;
regex = /i like (apple|banana|orange)\./; // відповідає «i like apple.», «i like banana.» та «i like orange.».

 

 

Можливі функції

let regex;
regex.test("World"); // повертає true, якщо знайдено збіг, інакше false
regex.exec("World"); // повертає масив результатів, інакше null

 

Приклад перевірки:

<script type="text/javascript">
let regex;
regex = /w.rld/;
if ( regex.test("world") ) {
 console.log("Yes!");
} else {
 console.log("No!");
}
</script>

 

 

 

От і все! Сподіваємося, що сьогоднішня шпаргалка по регулярним виразам в JavaScript була вам корисною!

 

Recent Posts

Воррен Баффет

Навіть якщо ви дуже талановиті і докладаєте великих зусиль, для деяких результатів просто потрібен час:…

2 дні ago

Покрокова інструкція Імпорту даних з Excel в MySQL через phpMyAdmin

Цей практичний урок допоможе вам перенести дані з вашого Excel-файлу (з деякими конкретними стовпцями) до…

4 дні ago

Поширені міфи та помилки про пиво: відновлюємо справедливість

Пиво – один із найпопулярніших напоїв, який поряд з чаєм та кавою відомий у всіх…

4 дні ago

Уроки JavaScript — Короткі функції на заміну великому об’ємному коду

Досить часто у програмістів виникає спокуса написати якусь велику функцію, що повинна вирішувати певну задачу.…

1 тиждень ago

Навіщо та як прокидатися раніше

Дискусії навколо цієї теми вас, певно, вже втомили. Але я в даній статті постараюсь показати…

2 тижні ago

Уроки JavaScript — Шпаргалка для розробників по роботі з консоллю у браузері

Консоль браузера (також відома як консоль JavaScript або веб-консоль), — це потужний інструмент для розробників,…

2 тижні ago