Development

Wyrażenia regularne: kompletny poradnik dla początkujących

X Xuvero Team 6 marca 2026 3 min czytania 1,016 wyświetleń
Wyrażenia regularne: kompletny poradnik dla początkujących

Wyrażenia regularne (regex lub regexp) to potężne narzędzie do wyszukiwania, zastępowania i sprawdzania poprawności tekstu za pomocą wzorców. Są używane we wszystkich językach programowania, edytorach tekstu i wierszu poleceń. Chociaż wyrażenie regularne może na pierwszy rzut oka wydawać się skomplikowane, podstawowe pojęcia są dość proste. W tym przewodniku przejdziemy od technik podstawowych do zaawansowanych.

Co to są wyrażenia regularne

Wyrażenie regularne to ciąg znaków opisujący wzór tekstu. Na przykład wyrażenie\d{3}-\d{2}-\d{2}opisuje numer telefonu w formacie „123-45-67”. Zamiast szukać określonego tekstu, regex umożliwia wyszukiwanie wedługszablon— dowolny tekst zgodny z określonym formatem.

Regex jest obsługiwany we wszystkich głównych językach programowania: JavaScript, Python, PHP, Java, C#, Go, Ruby i innych. Składnia jest w większości taka sama, chociaż istnieją niewielkie różnice między implementacjami.

Podstawowa składnia

Dosłowne znaki

Najprostszym wyrażeniem regularnym jest po prostu tekst. Wyrażeniehelloznajdzie w tekście słowo „cześć”. Większość symboli odpowiada sobie samym.

Metaznaki

Znaki specjalne mają specjalne znaczenie w wyrażeniu regularnym:

  • .— dowolny pojedynczy znak (z wyjątkiem nowej linii)
  • ^— początek linii
  • $— koniec linii
  • \d— dowolna liczba (0-9)
  • \w— dowolna litera, cyfra lub znak podkreślenia
  • \s— znak spacji (spacja, tabulator, nowa linia)
  • \b— limit słów

Wielkie litery oznaczają coś odwrotnego:\D- nie liczba,\W- nie list,\S- nie spacja.

Klasy postaci

Nawiasy kwadratowe definiują zbiór znaków:

  • [abc]— symbol a, b lub c
  • [a-z]— dowolna mała litera łacińska
  • [A-Z0-9]— wielka litera lub cyfra
  • [^abc]— dowolny symbol z wyjątkiem a, b, c
  • [а-яА-ЯіІїЇєЄґҐ]— Listy ukraińskie

Kwantyfikatory

Kwantyfikatory określają liczbę powtórzeń:

  • *— 0 lub więcej razy
  • +— 1 lub więcej razy
  • ?— 0 lub 1 raz
  • {3}- dokładnie 3 razy
  • {2,5}— od 2 do 5 razy
  • {3,}— 3 lub więcej razy

Przykłady:\d+— jedną lub więcej cyfr,[a-z]{2,4}— od 2 do 4 małych liter.

Grupy i alternatywy

Grupowanie

Nawias()pogrupuj części wyrażenia i pobierz znaleziony tekst:

  • (\d{2})-(\d{2})-(\d{4})— data z trzema grupami (dzień, miesiąc, rok)
  • (?:abc)— grupa bez przechwytywania (dla szybkości)

Alternatywy

Symbol|oznacza „lub”

  • cat|dog— „kot” lub „pies”
  • (Mon|Tue|Wed|Thu|Fri)— dowolny dzień roboczy

Typowe szablony

Adres e-mail

[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

adres URL

https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[^\s]*)?

Telefon (Ukraina)

\+?380[\s-]?\d{2}[\s-]?\d{3}[\s-]?\d{2}[\s-]?\d{2}

Adres IPv4

\b(?:\d{1,3}\.){3}\d{1,3}\b

Data (DD.MM.RRRR)

(?:0[1-9]|[12]\d|3[01])\.(?:0[1-9]|1[0-2])\.\d{4}

Lookahead i Lookback

Zaawansowane konstrukcje sprawdzające kontekst bez uwzględniania go w wyniku:

  • (?=...)- pozytywne spojrzenie w przyszłość: tekst po nim musi pasować do szablonu
  • (?!...)- negatywne spojrzenie w przód: tekst po NIE powinien pasować
  • (?

Приклад: \d+(?= грн) — знайде числа перед " грн" (100 грн → захопить "100").

Прапорці (модифікатори)

  • i — нечутливий до регістру (case-insensitive)
  • g — глобальний пошук (знайти всі збіги, не тільки перший)
  • m — багаторядковий режим (^ та $ працюють для кожного рядка)
  • s — крапка . також збігається з новим рядком

Поради для ефективного використання

  • Починайте з простого — спочатку напишіть базовий шаблон, потім ускладнюйте
  • Тестуйте на різних даних — перевіряйте як позитивні, так і негативні випадки
  • Уникайте жадібності — використовуйте *? та +? для лінивих квантифікаторів
  • Коментуйте складні вирази — використовуйте прапорець x для readable regex
  • Не парсіть HTML регулярними виразами — використовуйте DOM parser

Практика: тестуйте regex онлайн

Найкращий спосіб вивчити regex — практика. Скористайтеся нашим тестером регулярних виразів — він підсвічує збіги в реальному часі та допомагає зрозуміти, як працює ваш шаблон.

Висновок

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

Komentarze (0)

Aby dodać komentarz, proszę zaloguj się

Brak komentarzy. Bądź pierwszy!

Bądź na bieżąco

Otrzymuj powiadomienia o nowych artykułach, narzędziach i aktualizacjach.

Subskrypcja aktywna! Dziękujemy za dołączenie.

AI Xuvero
Cześć! Jestem AI Xuvero — sztuczna inteligencja stworzona przez zespół Xuvero. Mogę znaleźć odpowiednie narzędzie, wyjaśnić jak coś działa, napisać kod, odpowiedzieć na każde pytanie lub po prostu porozmawiać. W czym mogę pomóc?