10 Tester RegEx dla JavaScript, Python, PHP, Golang, Ruby itp.

Wyrażenie regex może być uciążliwe. No, czasami!

Dowiedzmy się o wyrażeniach regularnych i ich wzorcach. Przyjrzymy się takim wzorom, które wydają się zawiłą zupą charakterów. Zobaczymy, co oznacza każdy znak w wyrażeniu regularnym.

Po przeczytaniu tego artykułu będziesz mógł tworzyć swoje wyrażenia regularne i używać ich w dowolny sposób. Na koniec wymienimy również niektóre internetowe narzędzia do testowania RegEx, aby w oparciu o wymagania można było utworzyć RegEx i przetestować go za pomocą tych narzędzi.

Wstęp

Wyrażenia regularne lub jak to powszechnie wiadomo — RegEx to dowolna sekwencja znaków, której można użyć jako wzorca do wyszukiwania znaków lub ciągów.

Na przykład – aby określić, czy ciąg lub fraza zawiera słowo „jabłko”, możemy użyć wyrażenia regularnego „/jabłko” do wyszukiwania w ciągu. Jako inny przykład możemy użyć „/[0-9]”, aby sprawdzić, czy dany ciąg zawiera liczbę z zakresu od 0 do 9.

Wyrażenia regularne i ich zastosowanie

Wyrażenia regularne są powszechnie używane do różnych celów we współczesnych operacjach internetowych. Walidacja formularzy internetowych, wyszukiwarek internetowych, analizatorów leksykalnych w środowiskach IDE, edytorów tekstu i edytorów dokumentów to tylko kilka przykładów, w których często używane są wyrażenia regularne.

Wszyscy wielokrotnie używaliśmy „CTRL + F”, aby przeszukać dokument lub fragment kodu, aby znaleźć określone słowo, frazę lub wyrażenie. Operację tę można wskazać jako bardzo powszechny przykład użycia wyrażeń regularnych.

Zanim przejdziemy dalej, spójrzmy na bardzo często używane wyrażenie regularne.

Czy potrafisz zgadnąć 🤔 poniższy RegEX, do czego służy?

^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})$

Nie martw się, jeśli nie możesz tego odgadnąć. Jestem pewien, że pod koniec tego artykułu będziesz w stanie zgadnąć.

Najpierw zacznijmy od A, B, C RegEx.

Tokeny

Na początek spójrzmy na różne symbole w regexie pokazanym powyżej.

^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})$

Jeśli spojrzymy na podany powyżej regex, zobaczymy, że składa się z wielu symboli lub znaków lub tokenów. Dowiedzmy się, co mają na myśli:

Znak

Oznaczający

^

Ten token oznacza początek ciągu.

(…)

To oznacza grupę, w której wszystko, co jest dane w (…) zostaje uchwycone.

[…]

The [] zawiera znaki, z których każdy może być dopasowany. Na przykład – [abc] dopasuje a, b lub c.

Az

Zestaw małych liter od a do z. Musimy pamiętać, że Regex rozróżnia wielkość liter.

AZ

Zestaw wielkich liter od A do Z.

0-9

Cyfry od 0 do 9.

_

To będzie pasować do znaku _.

To jest postać ucieczki.

.

To pasuje do znaku „.” dosłownie. Jest to używane, ponieważ symbol „.” w wyrażeniach regularnych to token sam w sobie, który pasuje do dowolnego znaku

+

To jest kwantyfikator. Dopasowuje jeden lub więcej znaków, z którymi jest używany. Na przykład a+ oznacza jedno lub więcej wystąpień znaku a.

To będzie pasować do znaku „-”.

@

Będzie to pasować do znaku „@”.

{}

To kolejny kwantyfikator. Służy do oznaczania liczby wystąpień znaku. Na przykład a{3} oznacza dokładnie 3 a.

$

Oznacza to koniec ciągu.

Podział danego wzoru Regex

Teraz, uzbrojeni w tę wstępną wiedzę o tokenach, spróbujmy rozszyfrować powyższe wyrażenie regularne:

  • ^([a-zA-Z0-9_-.]+) oznacza, że ​​szukamy ciągu, który zaczyna się od co najmniej jednego wielkiego lub małego znaku alfanumerycznego, podkreślenia, łącznika lub kropki. Na przykład wszystko, co wygląda podobnie do nazwa_użytkownika.01, będzie pasować do wzorca. Musimy pamiętać, że tutaj nie trzeba uwzględniać wszystkich symboli tylko jednego znaku w [a-zA-Z0-9_-.] zrobi.
  • Znak @ pasuje do pojedynczego wystąpienia @. Dodając do poprzedniego przykładu coś takiego [email protected] będzie pasować.
  • ([a-zA-Z0-9_-.]+) jest podobny do pierwszego punktu. Oznacza to również, że szukamy ciągu zawierającego co najmniej jeden lub więcej znaków alfanumerycznych, podkreśleń, łączników lub kropek. Dodając do przykładu, [email protected] zmieści się tutaj.
  • Jak już zapewne zgadłeś, sugerujemy wzorzec wiadomości e-mail. Iść dalej, . pasuje do singla „.” postać. Jeśli będziemy kontynuować bieżący przykład, coś takiego: [email protected]
  • ([a-zA-Z]{2,5})$ oznacza to, że ciąg powinien kończyć się od 2 do 5 znaków alfabetu albo dużymi albo małymi literami. Jeśli dodamy .com do poprzedniego przykładu, otrzymamy [email protected]który jest typowym wzorcem ciągu wiadomości e-mail.

Łącząc wszystkie powyższe, widzimy, że szukamy ciągu identyfikatora e-mail. Teraz możemy użyć tego wyrażenia, aby zweryfikować dowolny identyfikator e-mail. Jeśli nasz testowy identyfikator e-mail pasuje do tego wzorca, możemy powiedzieć, że jest to prawidłowy identyfikator e-mail.

PS – to wzorzec dla najpopularniejszych identyfikatorów e-mail w sieci.

Rodzaje tokenów

Wiele tokenów może być używanych w różnych kombinacjach w ramach wyrażenia regularnego, aby opisać szeroką gamę wyrażeń. Poniżej przyjrzymy się różnym typom tokenów używanych w wyrażeniach regularnych. Ponadto przyjrzymy się również najczęściej używanym tokenom w każdej kategorii.

Żetony podstawowe

Zacznijmy od podstawowych tokenów. Te tokeny są używane z prawie każdym wyrażeniem regularnym. Dlatego najpierw musimy się o nich dowiedzieć.

Znak

Oznaczający

r

To pasuje do znaku powrotu karetki.