Полезные материалы

Регулярні вирази

Регулярні вирази (regular expressions) - формальна мова пошуку подстрок в тексті, заснований на використанні метасимволов (символів-джокерів)

Регулярні вирази (regular expressions) - формальна мова пошуку подстрок в тексті, заснований на використанні метасимволов (символів-джокерів). Для пошуку використовується рядок-зразок (шаблон, маска), що складається з символів і метасимволов, що є правилом пошуку. Також, додатково для маніпуляцій з текстом, може здаватися рядок заміни, яка може теж складатиметься зі спеціальних символів.

За допомогою регулярних виразів можна перевіряти наявність рядка в тексті або окремих символів. Регулярний вираз може використовуватися для заміни зразка в тексті на інший або видалення його з тексту.

Існують спеціальні метасимволи, маски, для пошуку. У цій статті немає сенсу їх все описувати, тут вони докладно описані.

Спочатку регулярні вирази з'явилися в нейрофізіології, а потім і в теорії обчислювальних систем. Пізніше регулярні вирази були адаптовані для алгоритмів пошуку інформації та їх почали використовувати в текстових редакторах і в багатьох мовах програмування.

Для деяких даних може бути придумано кілька регулярних виразів. Ось один із прикладів використання регулярки для перевірки коректності e-mail (виду [email protected]):

^ ([A - z0 - 9_ -] + \.) * [A - z0 - 9_ -] + @ [a - z0 - 9_ -] + (\. [A - z0 - 9_ -] +) * \. [A - z] {2, 6} $

Існують безліч сайтів з шаблонами регулярних виразів і сервісів для їх перевірки, не забувайте ними користуватися. У програмуванні регулярки часто використовуються для валідації вхідних даних зі сторінки. В автоматизованому тестуванні регулярні вирази можуть використовуватися для пошуку локаторів і перевірки повідомлень системи. У BDD регулярні вирази часто використовуються для генерації одного кроку з можливістю приймати деякі значення в якості вхідних параметрів, що дозволить скоротити розмір коду і зробити деякі кроки універсальними.