Wyrażenia regularne

Wyrażenia regularne są używane w bardzo wielu językach programowania. Na pierwszy rzut oka ich budowa i zasada działania wydają się bardzo trudne. Jednak tak naprawdę po poznaniu podstaw ich tworzenia oraz znaczenia poszczególnych symboli będziemy potrafili bardzo szybko tworzyć własne wyrażenia regularne oraz rozumieć już gotowe.

Podstawowe znaczniki

Najczęściej używane symbole przy tworzeniu wyrażeń regularnych to:

  • /^ – oznacza, że dopasowywanie ciągu znaków należy rozpocząć od początku łańcucha
  • /d – oznacza cyfrę
  • $/ – oznacza, że w tym miejscu dany łańcuch znaków musi się skończyć
  • {5} – cyfra zamknięta w klamrach oznacza liczbę powtórzeń znaku, który został zadeklarowany przed nią

Przykładowe wyrażenie:

\d{5}

Oznacza pięć powtórzeń \d czyli pięć dowolnych cyfr.

/^\d{5}$/

Oznacza, że dopasowywanie będziemy rozpoczynać od początku łańcucha znaków (/^), następnie ma się znajdować pięć dowolnych cyfr (/d{5}), a po nich nie może znajdować się już nic (łańcuch znaków ma zostać zakończony – $/).

Metaznaki

  • /s – oznacza odstęp lub tabulację
  • /w – oznacza znaki od a – z i A – Z (duże i małe litery angielskiego alfabetu) oraz cyfry od 0 do 9
  • . – oznacza dowolny znak (z wyjątkiem „nowego wiersza”)

Kwantyfikatory

Należy je zapisywać w nawiasach okrągłych

  • + – oznacza, że wcześniejszy znak lub metaznak musi pojawić się przynajmniej jeden raz
  • * – oznacza, że wcześniejszy znak lub metaznak może pojawić się dowolną liczbę razy lub w ogóle nie wystąpić
  • ? – oznacza, że wcześniejszy znak lub metaznak może pojawić się jeden raz lub w ogóle nie wystąpić

Przykład zastosowania:

(-\d{6})?

Oznacza, że znak – oraz sześć cyfr są opcjonalne.

Jeżeli chcesz umieścić w wyrażeniu regularnym jakiś znak np. literę „c” to po prostu wpisz go jak zwykły metaznak. Natomiast jeżeli będzie to znak specjalny np. / \ < > ? * + . $ ^ to poprzedź go lewym ukośnikiem – \

 

Myślę, że ten krótki poradnik pomoże Wam w tworzeniu własnych wyrażeń regularnych!

Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Więcej informacji

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close