sobota, 23 marca 2019

Front end improvement #1 – wyrażenia regularne



Wyrażenia regularne (często nazywane regexami), ułatwiają nam pracę z łańcuchami znaków. Warto poznać ich najważniejsze zastosowania oraz podstawy składni, ponieważ wyrażenia regularne przydadzą się w większości projektów.
W dużym uproszczeniu, wyrażenia regularne pozwalają na wyszukiwanie bardzo szczegółowo zdefiniowanych wzorów (patternów) w ciągach znaków.

Wyrażenia regularne, mają zastosowanie między innymi przy:
  • Walidacji formularzy
  • Pracy z adresami url
  • Przekształeniach stringów
  • Wyszukiwaniu różnego typu informacji w tekście
  • Wyszukiwanie danych w edytorze kodu źródłowego
  • Przekształcanie danych w dokumentach tekstowych, na przykład usuwanie zdublowanych spacji.
  • Rozwiązywaniu zadań code golf, ze względu na bardzo zwięzłą składnię i duże możliwości
Nie powinno się ich stosować przy:
  • Parsowaniu XML, HTML czy JSON
  • Sprawdzaniu wartości danych
  • Oraz wtedy, gdy do danego celu można uzyć gotowego narzędzia, na przykład parsera.
Wadą wyrażeń regularnych, jest bardzo zwięzła składnia, w której nie można tworzyć komentarzy.

Popularną praktyką jest używanie gotowych wyrażeń regularnych, które pozwalają na dopasowanie określonego wzorca. Spotkałem się z tym między innymi przy konfiguracji ELK Stack. Narzędzie Logstash, wchodzące w skład Elastic Search, pozwala między innymi na wyodrębnianie z logów serwerowych tych ciągów znaków, które następnie chcemy wyświetlić w Kibanie. Aby to ułatwić, twórcy dostarczają nam szereg wyrażeń regularnych, służących między innymi do parsowania dat, adresów IP czy komunikatów błędów.

W tym artykule nie będe omawiać składni wyrażeń regularnych, ponieważ możesz poznać ją z wielu innych stron i książek. Podczas nauki, pamiętaj że implementacja regexów może różnić się między poszczególnymi językami.
Jeśli chcesz nauczyć się wyrażeń regularnych, mogę polecić Ci między innymi:
  • Stronę https://regex101.com/, na której możesz testować wyrażenia regularne na żywo
  • Rozdział 9 książki Eloquent JS dostępny online tutaj
  • Książkę Learning Regular Expressions napisaną przez Bena Forta.
  • Oraz dokumentację JS dotyczącą regexów na stronie MDN
Wyrażeń regularnych najlepiej jest się uczyć przez praktykę, na przykład rozwiązując zadania z Codewars lub pomagając innym programistom, na StackOverflow.


Brak komentarzy:

Prześlij komentarz