Уроки 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 була вам корисною!

 

Share

Останні пости

Антуан де Сент-Екзюпері

Ніколи не втрачай терпіння — це останній ключ, що відкриває двері Антуан де Сент-Екзюпері   Читати далі

28/03/2024

Сомерсет Моем

Подорослішавши, ви збагнете, що світ стає стерпним за однієї умови: коли розумієш, що людський егоїзм… Читати далі

27/03/2024

Михайло Грушевський

Всі вчаться своєї рідної мови, а наша біда така, що треба вчитися її більше, ніж… Читати далі

26/03/2024

ТОП-5 покерних обмінників

Професійний покер – це численні турніри та великі гроші, що потребує правильного налаштування фінансових інструментів.… Читати далі

25/03/2024

Гай Юлій Цезар

Всі довкола прагнуть винищити ворогів, а не об'єднатися з друзями Гай Юлій Цезар   Читати далі

24/03/2024

Як вибрати оптимальний смартфон для дитини?

Сьогоднішні діти стикаються з технологіями вже в ранньому віці, і смартфон давно перестав бути просто… Читати далі

22/03/2024