Samouczek C# Regex: Co to jest wyrażenie regularne w języku C#?

Ten samouczek C# Regex wyjaśnia, czym jest wyrażenie regularne w C#, jego składnię, metody klasy Regex i jak korzystać z tych metod za pomocą przykładów:

Wyrażenie regularne w języku C# służy do dopasowywania określonego wzorca znaków. Wyrażenia regularne są używane, gdy użytkownik musi znaleźć powtarzający się wzorzec lub przeprowadzić walidację danych, a nawet sprawdzić formatowanie danych.

RegEx służy do sprawdzania, czy ciąg znaków zawiera lub pasuje do danego wzorca znaków. Wyrażenie regularne to przede wszystkim sekwencja znaków oznaczająca wzorzec.

Wzorzec może być dowolny, począwszy od liczb, znaków lub kombinacji wszystkich. Regex jest szeroko stosowany do sprawdzania poprawności, parsowania lub dopasowywania ciągów znaków, na przykład, sprawdza, czy ciąg znaków pasuje do formatu waluty, numeru telefonu lub daty.

Klasa Regex w języku C#

Klasa Regex jest używana w języku C# do wykonywania operacji regex. Zawiera ona kilka różnych metod, które mogą być używane do wykonywania różnych operacji związanych z regex.

Może być używany do analizowania dużego tekstu w celu znalezienia określonej sekwencji znaków za pomocą metod, które mogą być używane do wykonywania dopasowania, zastępowania lub mogą być używane do dzielenia sekwencji znaków.

Klasa regex znajduje się w przestrzeni nazw; System.Text.RegularExpression. Klasa akceptuje ciąg znaków w postaci sekwencji znaków jako parametr.

Metody C# Regex

IsMatch

Najprostszą i najbardziej użyteczną metodą w klasie Regex jest metoda IsMatch. Metoda ta ma różne przeciążenia do wykonywania dopasowywania znaków na podstawie różnych parametrów.

Najprostszym z nich jest

Replace(String text, String replacementText)

Metoda replace przyjmuje dwa parametry i zwraca wartość łańcuchową. Pierwszym parametrem jest sekwencja znaków lub wyrażenie regularne, które ma zostać użyte do dopasowania, a drugim jest zastąpienie wyrażenia regularnego.

Metoda działa poprzez znalezienie dopasowania podanego tekstu, a następnie zastępuje go tekstem zastępczym podanym przez użytkownika. Sygnatura metody to public string Replace(string text, string replacementText)

Public string[] Split(string text)

Metoda split z klasy regex przyjmuje ciąg znaków jako parametr i zwraca tablicę zawierającą podciągi. Parametrem przekazywanym w metodzie jest ciąg znaków, który ma zostać podzielony.

Metoda wyszukuje pasujący wzorzec wejściowy w ciągu znaków i po zidentyfikowaniu dowolnego pasującego wzorca dzieli ciąg znaków w tym miejscu na mniejsze podciągi, przy czym każdy pasujący wzorzec jest punktem przerwania. Następnie metoda zwraca tablicę zawierającą wszystkie podciągi.

Wykorzystanie metod Regex C#

Przyjrzyjmy się wykorzystaniu tych metod, pisząc prosty program.

 public static void Main(string[] args) { string patternText = "Hello"; Regex reg = new Regex(patternText); //IsMatch(string input) Console.WriteLine(reg.IsMatch("Hello World")); //IsMatch(string input, int index) Console.WriteLine(reg.IsMatch("Hello", 0)); //IsMatch(string input, string pattern) Console.WriteLine(Regex.IsMatch("Hello World", patternText)); //Replace(string input, stringreplacement) Console.WriteLine(reg.Replace("Hello World", "Replace")); //Split(string input, string pattern) string[] arr = Regex.Split("Hello_World_Today", "_"); foreach(string subStr in arr) { Console.WriteLine("{0}", subStr); } } 

Dane wyjściowe powyższego programu

Prawda

Prawda

Prawda

Zastąp świat

Witam

Świat

Dzisiaj

Wyjaśnienie powyższego kodu:

Na początku programu utworzyliśmy obiekt i wzorzec, którego będziemy używać do dopasowywania kodu w kolejnych ciągach wejściowych, użyliśmy formatowania tekstu, aby zachować prostotę na początku, ale jeśli czujesz się komfortowo, możesz zacząć używać wzorców wyrażeń regularnych (omówimy szczegółowo wzorzec wyrażeń regularnych w miarę postępów w tym samouczku).

Następnie użyjemy match string, aby wprowadzić czynnik, który zadeklarowaliśmy jako określony obiekt z ciągiem wejściowym, a jeśli będzie pasował, zwróci false.

Kolejną metodą, której użyliśmy, jest IsMethod(string input, int index). Metoda ta akceptuje dwa parametry, a tutaj podajemy ciąg wejściowy i indeks, od którego ma się rozpocząć dopasowanie. Na przykład, tutaj chcieliśmy rozpocząć dopasowywanie od początku ciągu wejściowego.

Następnie zademonstrowaliśmy użycie IsMatch(string input, string pattern). Tutaj podaliśmy ciąg wejściowy, a następnie chcieliśmy sprawdzić, czy tekst wzorca jest obecny na wejściu, czy nie. Jeśli jest obecny, zwróci wartość true (jak w naszym przypadku), w przeciwnym razie zwróci false.

Inną metodą, którą omówiliśmy, jest replace. Metoda ta jest bardzo przydatna w programach, w których chcesz wprowadzić zmiany w danych wejściowych lub zmienić format istniejących danych.

Tutaj podajemy dwa parametry, pierwszy to ciąg wejściowy, a drugi to ciąg, który może być użyty do zastąpienia poprzedniego ciągu. Ta metoda wykorzystuje również wzorzec zdefiniowany w obiekcie regex, który zdefiniowaliśmy wcześniej.

Inną ważną metodą, której użyliśmy, jest split. Ta metoda służy do dzielenia podanego ciągu na podstawie powtarzających się wzorców. Tutaj podaliśmy ciąg "Hello_World_Today".

Powiedzmy, że chcemy usunąć podkreślenie z podanego ciągu i uzyskać podciągi. W tym celu określamy parametr wejściowy, a następnie podajemy wzorzec, którego musimy użyć jako punktu podziału. Metoda zwraca tablicę i możemy użyć prostej pętli, takiej jak foreach, aby pobrać wszystkie ciągi.

Składnia wyrażeń regularnych

Istnieje kilka różnych składni, takich jak znaki specjalne, kwantyfikatory, klasy znaków itp., których można użyć do dopasowania określonego wzorca z danego wejścia.

W tej części samouczka zagłębimy się w składnię oferowaną przez regex i spróbujemy rozwiązać kilka rzeczywistych scenariuszy za ich pomocą. Zanim przejdziemy dalej, upewnij się, że poznałeś podstawową ideę regex i różne metody dostępne w klasie regex.

Znaki specjalne

Znaki specjalne w wyrażeniu regularnym są używane do przypisania kilku różnych znaczeń do wzorca. Przyjrzymy się teraz niektórym z powszechnie używanych znaków specjalnych i ich znaczeniu w Regex.3

Znaki specjalne Znaczenie
^ Jest to jedna z najczęściej używanych składni. Oznacza ona początek, słowo lub wzorzec po niej rozpoczyna dopasowywanie od początku tekstu wejściowego.
$ Ten znak jest używany do dopasowywania słów z końca ciągu. Słowa/wzorce oznaczone przed tym symbolem będą pasować do słów znajdujących się na końcu ciągu.
. (kropka) Kropka jest używana do dopasowania pojedynczego znaku w podanym ciągu występującego jeden raz.
\n Jest to używane dla nowej linii.
\d i \D Mała litera "d" jest używana do dopasowania znaku cyfry, a duża litera "D" jest używana do dopasowania znaków innych niż cyfry.
\i \S Małe litery "s" są używane do dopasowywania białych spacji, a duże litery "S" są używane do dopasowywania spacji innych niż białe.
\w i \W Mała litera "w" jest używana do dopasowywania znaków alfanumerycznych/underscore, a duża litera "W" jest używana do dopasowywania znaków niesłownych.

Składnia kwantyfikatora

Składnia kwantyfikatorów jest używana do liczenia lub kwantyfikowania pasujących kryteriów. Na przykład, jeśli chcesz sprawdzić, czy dany ciąg znaków zawiera alfabet jeden lub więcej razy. Przyjrzyjmy się niektórym z powszechnie używanych kwantyfikatorów w wyrażeniach regularnych.

Składnia kwantyfikatora Znaczenie
* Ten symbol jest używany do dopasowania poprzedzającego znaku.
+ Ten symbol jest używany do dopasowania jednego lub więcej znaków w rzędzie.
{n} Cyfra numeryczna wewnątrz nawiasów klamrowych jest używana do dopasowania numeru poprzedzającego znaku zdefiniowanego przez numeric wewnątrz nawiasów klamrowych.
{n,} Liczba wewnątrz nawiasów klamrowych i ten symbol są używane, aby upewnić się, że pasuje do co najmniej n (tj. wartości liczbowej wewnątrz nawiasów klamrowych).
{n, m} Ten symbol jest używany do dopasowywania od poprzedzającego znaku od n razy do m razy.
? Ten symbol powoduje, że poprzedzające znaki są dopasowywane jako opcjonalne.

Klasa postaci

Klasa znaków jest również znana jako zestawy znaków i służy do informowania silnika regex, aby szukał pojedynczego dopasowania spośród kilku znaków. Klasa znaków będzie pasować tylko do jednego znaku, a kolejność znaków zawartych w zestawie znaków nie ma znaczenia.

Klasa postaci Znaczenie
[ zakres ] Symbol nawiasu kwadratowego służy do dopasowywania zakresu znaków. Na przykład, możemy go użyć do zdefiniowania dowolnego znaku w zakresie od alfabetu "a" do "z", zamykając zakres wewnątrz nawiasu klamrowego, na przykład [a-z].

Możemy też dopasować się do liczb od "1" do "9", oznaczając [1-9]

[^ zakres] To oznacza klasę znaków negacji. Jest ona używana do dopasowywania wszystkiego, co nie mieści się w zakresie określonym wewnątrz nawiasu.
\ Służy do dopasowywania znaków specjalnych, które mogą mieć własne symbole regex. Ukośnik jest używany do dopasowywania znaków specjalnych w ich dosłownej formie.

Grupowanie

Nawiasy okrągłe lub nawiasy mogą być używane do grupowania części wyrażenia regularnego. Pozwala to użytkownikowi na dodanie kwantyfikatora do wyrażenia.

Grupowanie Znaczenie
( wyrażenie grupowe ) Nawiasy okrągłe służą do grupowania wyrażeń.
The

Przykłady wyrażeń regularnych w języku C#

W poprzedniej sekcji dowiedzieliśmy się o symbolach wyrażeń regularnych, w tej sekcji przyjrzymy się szczegółowo użyciu różnych symboli w wyrażeniach regularnych i kombinacji, w których mogą być używane do dopasowywania różnych wyrażeń.

W tym samouczku omówimy niektóre z najczęściej spotykanych rzeczywistych scenariuszy, z którymi możesz się spotkać jako programista podczas pracy nad jakąś aplikacją lub w prostym programie do pobierania danych wejściowych od użytkownika.

Przykład wyrażenia regularnego z rzeczywistymi scenariuszami

Dowiedzmy się więcej o wyrażeniach regularnych, korzystając z kilku przykładów w czasie rzeczywistym.

Scenariusz 1: Sprawdź, czy ciąg wejściowy składa się z 6-cyfrowych znaków alfabetu bez uwzględniania wielkości liter.

Najczęstszym scenariuszem dla wyrażeń regularnych jest znajdowanie i dopasowywanie danego słowa. Na przykład, Załóżmy, że chcę uzyskać od użytkownika losowy ciąg alfabetyczny, który powinien mieć długość dokładnie 6 cyfr.

Aby to zweryfikować, możemy użyć prostego wyrażenia regularnego. Napiszmy program, aby lepiej zrozumieć pisanie i używanie wyrażeń regularnych.

 public static void Main(string[] args) { string patternText = @"^[a-zA-Z]{6}$"; Regex reg = new Regex(patternText); //When pattern matches Console.WriteLine(reg.IsMatch("Helios")); //When pattern does not match Console.WriteLine(reg.IsMatch("Helo")); } 

Wyjście

Prawda

Fałsz

Wyjaśnienie

W tym przykładzie próbujemy zweryfikować ciąg wejściowy, aby sprawdzić, czy zawiera on sześciocyfrowe znaki alfabetyczne. Znaki mogą być zarówno małymi, jak i dużymi literami, więc musimy to również uwzględnić.

Tak więc zdefiniowaliśmy tutaj wzorzec wyrażenia regularnego w zmiennej "patternText", a następnie przekazaliśmy go do obiektu regex. Teraz kolejne linie kodu są dość proste, użyliśmy metody IsMatch do porównania wyrażenia regularnego i ciągu wejściowego.

Spójrzmy teraz na wyrażenie regularne, które opracowaliśmy. Wyrażenie (^[a-zA-Z]{6}$) składa się z 4 różnych części. "^", "[a-zA-Z]", "{6}" i "$". Druga część oznacza pasujące znaki, które są używane do dopasowywania wyrażeń, "a-z" dla małych liter i "A-Z" dla dużych liter.

Pierwszy znak "^" gwarantuje, że ciąg rozpoczyna się od wzorca zdefiniowanego w drugiej części, tj. małych i wielkich liter.

Nawiasy klamrowe w trzeciej części określają liczbę znaków w ciągu, które można zidentyfikować za pomocą zdefiniowanego wzorca, tj. 6 w tym przypadku, a symbol "$" upewnia się, że kończy się on wzorcem zdefiniowanym w drugiej części.

^[a-zA-Z]{6}$

Scenariusz 2: Użyj wyrażenia regularnego, aby zweryfikować, czy słowo zaczynające się od "Super" ma białą spację po nim, tj. aby sprawdzić, czy "Super" występuje na początku zdania.

Załóżmy, że czytamy dane wprowadzane przez użytkownika i musimy upewnić się, że użytkownik zawsze zaczyna zdanie od określonego słowa, liczby lub alfabetu. Można to łatwo osiągnąć za pomocą prostego wyrażenia regularnego.

Przyjrzyjmy się przykładowemu programowi, a następnie omówmy szczegółowo, jak napisać to wyrażenie.

 public static void Main(string[] args) { string patternText = @"^Super\s"; Regex reg = new Regex(patternText); //When pattern matches Console.WriteLine(reg.IsMatch("Super man")); //When pattern doesnt match Console.WriteLine(reg.IsMatch("Superhero")); } 

Wyjście

Prawda

Fałsz

Wyjaśnienie

W tym przykładzie również użyliśmy podobnej konfiguracji kodu, jak w pierwszym. Wzorzec wyrażenia regularnego w tym scenariuszu wymaga dopasowania do kombinacji słów lub zdań zaczynających się od "Super".

Super

Tak więc, ponieważ chcemy dopasować od początku serii słów, zaczniemy od umieszczenia symbolu "^", a następnie podamy wzorzec, który chcemy dopasować, w tym przypadku "Super". Teraz utworzony przez nas wzorzec "^Super" może pasować do wszystkich wartości super, nawet superman lub supernatural, ale nie chcemy tylko słowa "Super".

Oznacza to, że po słowie powinna znajdować się biała spacja, aby zaznaczyć koniec słowa i początek kolejnego słowa. Aby to zrobić, dodamy symbol "\s" do wzorca, a tym samym nasz ostateczny wzorzec będzie wyglądał następująco

^Super\s

Scenariusz 3: Użyj wyrażenia regularnego, aby znaleźć prawidłowe nazwy plików z rozszerzeniem typu pliku obrazu.

Innym ważnym scenariuszem czasu rzeczywistego, z którym często spotykają się programiści, jest walidacja typów plików. Załóżmy, że mamy przycisk przesyłania w interfejsie użytkownika, który może akceptować tylko rozszerzenia typu plików graficznych.

Musimy zweryfikować plik przesłany przez użytkownika i poinformować go w przypadku, gdy przesłał plik w niewłaściwym formacie. Można to łatwo osiągnąć za pomocą wyrażenia regularnego.

Poniżej znajduje się prosty program do sprawdzenia tego.

 public static void Main(string[] args) gif)$"; Regex reg = new Regex(patternText); //When pattern matches Console.WriteLine(reg.IsMatch("abc.jpg")); Console.WriteLine(reg.IsMatch("ab_c.gif")); Console.WriteLine(reg.IsMatch("abc123.png")); //When pattern does not match Console.WriteLine(reg.IsMatch(".jpg")); Console.WriteLine(reg.IsMatch("ask.jpegj")); 

Wyjście

Prawda

Prawda

Prawda

Fałsz

Fałsz

Wyjaśnienie

Tutaj musimy dopasować nazwę pliku. Prawidłowa nazwa pliku składa się z trzech części ( nazwa pliku + . + rozszerzenie pliku ). Musimy utworzyć wyrażenie regularne pasujące do wszystkich trzech części. Zacznijmy od dopasowania pierwszej części, tj. nazwy pliku. Nazwa pliku może zawierać znaki alfanumeryczne i specjalne.

Jak wspomniano wcześniej, symbolem oznaczającym to jest "\w". Ponadto nazwa pliku może składać się z jednego lub więcej znaków, więc użyjemy symbolu "+". Połącz je i otrzymamy symbol pierwszej części.

 (\w+) 

Bracket rozdzielił to na części. Następną częścią jest symbol kropki. Ponieważ symbol kropki ma swoje znaczenie w wyrażeniu regularnym, użyjemy przed nim odwrotnego ukośnika, aby nadać mu dosłowne znaczenie. Połącz oba i mamy dwie pierwsze części wyrażenia regularnego.

 (\w+)\. 

Teraz, w trzeciej i ostatniej części, możemy bezpośrednio zdefiniować wymagane rozszerzenia plików oddzielone "

 (\w+)\.(jpg 

Teraz, jeśli użyjemy tego w programie, zobaczymy, że pasuje on do prawidłowego formatu i zwraca wartość true, ale w przypadku nieprawidłowych formatów zwraca wartość false.

Scenariusz 4: Użycie wyrażenia regularnego do weryfikacji formatu adresu strony internetowej

Załóżmy, że mamy formularz internetowy, który akceptuje adres internetowy lub adres domeny. Chcemy, aby użytkownik wprowadził poprawny adres internetowy / adres domeny podczas wypełniania formularza. Aby określić, czy użytkownik wprowadził poprawny adres internetowy, wyrażenie regularne może być całkiem przydatne.

 public static void Main(string[] args) { string patternText = @"^www.[a-zA-Z0-9]{3,20}.(com 

Wyjście

Prawda

Fałsz

Wyjaśnienie

W tym przypadku chcemy dopasować prawidłową nazwę domeny za pomocą wyrażenia regularnego. Prawidłowa nazwa domeny zaczyna się od skrótu "www", po którym następuje kropka (.), następnie nazwa strony internetowej po kropce (.), a na końcu rozszerzenie domeny.

Tak więc, podobnie jak w poprzednim scenariuszu, spróbujemy dopasować go część po części. Najpierw zacznijmy od dopasowania części "www." Zaczynamy więc od symbolu początkowego, a następnie jako "www." Jest to coś, co jest stałe, więc używamy symbolu początkowego, a następnie dokładnych słów do dopasowania.

 "^www." 

Następnie rozpoczniemy pracę nad drugą częścią. Drugą częścią adresu internetowego może być dowolna nazwa alfanumeryczna. Dlatego tutaj użyjemy nawiasów kwadratowych obecnych w klasie znaków, aby zdefiniować zakres, który musi zostać dopasowany. Po dodaniu drugiej części z drugą częścią otrzymamy drugą część.

 “^www.[a-zA-Z0-9]{3,20}” 

Tutaj dodaliśmy również nawiasy klamrowe, aby zdefiniować minimalną i maksymalną długość znaków dla nazwy witryny. Podaliśmy minimum 3 i maksimum 20. Możesz podać dowolną minimalną lub maksymalną długość.

Teraz, po omówieniu pierwszej i drugiej części adresu internetowego, pozostała nam tylko ostatnia część, tj. rozszerzenie domeny. Jest to dość podobne do tego, co zrobiliśmy w ostatnim scenariuszu, będziemy bezpośrednio dopasowywać rozszerzenia domen za pomocą OR i zamykając każde prawidłowe rozszerzenie domeny w nawiasie okrągłym.

Tak więc, jeśli dodamy je wszystkie razem, otrzymamy kompletne wyrażenie regularne pasujące do dowolnego prawidłowego adresu internetowego.

 www.[a-zA-Z0-9]{3,20}.(com 

Scenariusz 5: Użyj wyrażenia regularnego, aby zweryfikować format identyfikatora e-mail

Załóżmy, że mamy formularz logowania na naszej stronie internetowej, który prosi użytkowników o podanie adresu e-mail. Z oczywistych powodów nie będziemy chcieli, aby nasz formularz był kontynuowany z nieprawidłowymi adresami e-mail. Aby zweryfikować, czy adres e-mail wprowadzony przez użytkownika jest poprawny, czy nie, możemy użyć wyrażenia regularnego.

Poniżej znajduje się prosty program do sprawdzania poprawności adresu e-mail.

 public static void Main(string[] args) { string patternText = @"^[a-zA-Z0-9\._-]{5,25}.@.[a-z]{2,12}.(com 

Wyjście

Prawda

Prawda

Fałsz

Wyjaśnienie

Prawidłowy adres e-mail zawiera litery, cyfry i niektóre znaki specjalne, takie jak kropka (.), myślnik (-) i podkreślenia (_), po których następuje symbol "@", a następnie nazwa domeny i rozszerzenie domeny.

W ten sposób możemy podzielić adres e-mail na cztery części, tj. identyfikator e-mail, symbol "@", nazwę domeny i rozszerzenie domeny.

Zacznijmy od napisania wyrażenia regularnego dla pierwszej części. Może być alfanumeryczne z kilkoma znakami specjalnymi. Załóżmy, że mamy wyrażenie o rozmiarze od 5 do 25 znaków. Podobnie jak napisaliśmy to wcześniej (w scenariuszu e-mail), możemy wymyślić następujące wyrażenie.

 ^[a-zA-Z0-9\._-]{5,25} 

Przejście do drugiej części jest stosunkowo łatwe, ponieważ musimy dopasować tylko jeden symbol, tj. "@". Dodanie go do powyższego wyrażenia daje nam.

 ^[a-zA-Z0-9\._-]{5,25}.@ 

Przechodząc do trzeciej części, nazwa domeny zawsze będzie składać się z serii małych liter alfabetu. Jeśli chcesz, możesz również dołączyć znaki numeryczne lub wielkie litery alfabetu, ale w tym scenariuszu wybierzemy małe litery alfabetu.

Jeśli dodamy wyrażenie dla małych liter o długości od 2 do 12 znaków, otrzymamy następujące wyrażenie.

 ^[a-zA-Z0-9\._-]{5,25}.@.[a-z]{2,12} 

Teraz pozostało nam tylko wyrażenie rozszerzenia domeny, podobnie jak w czwartym scenariuszu, będziemy obsługiwać określone rozszerzenia domen. Jeśli chcesz, możesz dodać ich więcej, umieszczając je w nawiasie okrągłym i oddzielając je znakiem "

Konsolidacja tego wyrażenia z poprzednim wyrażeniem da nam ostateczną wartość wyrażenia dla walidacji wiadomości e-mail.

 ^[a-zA-Z0-9\._-]{5,25}.@.[a-z]{2,12}.(com 

Wnioski

W tym samouczku dowiedzieliśmy się, czym jest wyrażenie regularne wraz ze składnią / symbolami używanymi do oznaczania, konstruowania wyrażenia regularnego. Wyrażenie regularne pozwala użytkownikowi dopasować ciąg znaków do danego wzorca.

Jest to bardzo pomocne w sytuacjach, które wymagają szybkiej walidacji danych wejściowych, takich jak gdy użytkownik wprowadza swój adres e-mail lub numer telefonu, regex może być użyty do szybkiego sprawdzenia poprawności formatu i poinformowania użytkownika o problemie, jeśli użytkownik wprowadził nieprawidłowy format.

Nauczyliśmy się również radzić sobie z różnymi scenariuszami, które można wykorzystać w wielu różnych aplikacjach. Przyjrzeliśmy się krok po kroku procesowi pisania wyrażeń dopasowujących słowa, alfabety, adresy stron internetowych, identyfikatory e-mail, a nawet typy plików i rozszerzenia.

Scenariusze te są bardzo przydatne w walidacji danych wejściowych użytkownika w czasie rzeczywistym bez pisania wielu wierszy kodu, a tym samym pomagają zaoszczędzić czas i zmniejszyć złożoność. Przykłady te zostały wykorzystane do poprowadzenia użytkownika do stworzenia własnego zestawu wyrażeń regularnych, a tym samym pomóc im w obsłudze kilku innych różnych scenariuszy.

Regex może być prosty, jak użycie alfabetu lub cyfr do dopasowania z daną serią znaków lub złożony poprzez użycie kombinacji znaków specjalnych, kwantyfikatorów, klas znaków itp. w celu sprawdzenia poprawności złożonych formatów lub wyszukania określonego wzorca w serii znaków.

Krótko mówiąc, wyrażenie regularne jest dość potężnym narzędziem dla programisty i pomaga zmniejszyć ilość kodu wymaganego do wykonania dopasowania danych lub zadania walidacji.

Przewiń do góry