Regex (akronim Wyrażenie regularne) to sekwencja znaków, które pomagają nam w wyszukiwaniu i manipulowaniu strunami. Wyrażenia regularne może być używane we wszystkich językach programowania, takich jak Java, C ++ itp. Aby skorzystać z funkcji Regex, Java zapewnia wbudowany pakiet Jawa.Util.Regex który zawiera trzy klasy Wzór, Matcher, I PatternSyntaxException.
Ten zapis zapewni kompleksowy przegląd pisania regularności w Javie i zrobić to, musimy zrozumieć następujące pojęcia:
Więc zacznijmy!
Jawa.Util.Pakiet Regex
Jest to pakiet wbudowany, który obejmuje trzy klasy: a Wzór klasa, aby zdefiniować wzór, który będzie używany do wyszukiwania, a Matcher klasa, która może być używana do wyszukiwania wzoru i PatternSyntaxException klasa wskazująca błąd/wyjątek składniowy w a Regex wzór.
Tworzenie wzoru i dopasowanie wzoru w Regex
Musimy wywołać skompilować() Metoda Wzór klasa, aby stworzyć wzór. Metoda Compile () zwróci wzór, który będzie interpretowany przez Matcher () Metoda wykonywania operacji dopasowania przez ciąg/sekwencję znaków.
Przed udaniem się w kierunku, w jaki sposób napisać Regex na Javie, musimy zrozumieć ważne flagi, metacharacters i kwantyfikatory, które mogą być pomocne w pisaniu Regex.
Wzory w Regex
Klasa wzoru wykorzystuje tę skompilować() metoda tworzenia wzorca i może wymagać dwóch parametrów, jeden do przeszukania wzoru, a drugi jest opcjonalny, który służy do określenia flagi.
Jak skompilować() Metoda przyjmuje wzór w pierwszym parametrze, dlatego niektóre często używane wzorce podano poniżej:
Flagi w wyrażeniach
Flagi można przekazać jako drugi parametr do metody Compile () i służy do określenia zachowania wyszukiwania regularnego. Na przykład case_insenstive jest flagą, która określa: poszukaj wzorca, niezależnie od czułości obudowy i.mi. wielkie lub małe litery.
Metacharacters w Regex
Metacharacters Pomóż nam w zdefiniowaniu kryteriów wyszukiwania Regex i tych Metacharacters mieć jakieś szczególne znaczenie. Niektóre najczęściej używane metacharakty są wymienione w poniżej podanej w tabeli:
Metacharacters | Opis |
\D | znajduje cyfrę |
\B | Znajduje mecz na początku lub na końcu słowa |
$ | Znajduje dopasowanie na końcu łańcucha |
^ | Znajduje mecz na początku łańcucha |
\S | Służy do przeszukiwania białych przestrzeni |
| | Znajduje dopasowanie z wielu opcji oddzielonych „|”. |
. | Używane do dopasowania jednego znaku |
Kwantyfikatory w Regex
Jak sama nazwa wskazuje, kwantyfikatory określają ilość i.mi. Ile razy liczba występuje we wzorze, niektóre często używane kwantyfikatory podano w poniższej tabeli:
Kwantyfikatory | Opis |
A+ | A pojawia się co najmniej raz |
A* | A występuje zero lub więcej czasu |
A? | A występuje zero czasu lub raz |
Jakiś | A występuje N liczba razy |
Jakiś, | A występuje n razy lub więcej niż n razy |
A x, y | A występuje między dostarczonym zakresem i.mi. A występuje co najmniej x razy, ale mniej niż y razy |
Jak pisać Regex w Javie
Klasa wzoru zostanie użyta do stworzenia wzoru i do tego „Publiczne statyczne kompile ()” metoda, później określamy wzór w obrębie skompilować() metoda.
W Javie regularność można zapisać na wiele sposobów, jak wymieniono poniżej:
Pierwsza metoda
W poniższym fragmencie, po pierwsze, tworzymy obiekt klasy wzorców i określamy wzór w jego metodzie kompilacji. Korzystamy z Metacharacter "." co mówi, że sznur składa się z dwóch liter, w których pierwsza litera może być cokolwiek innego, jak tylko druga litera musi być "I":
Klasa publiczna WriteeGexExampleTworzymy obiekt klasy mechera, który interpretuje wzór i będzie wykonywać operacje dopasowania w ciągu wejściowego. Następnie wykorzystaliśmy metodę Matches (), która zwróci wartość logiczną, jeśli zostanie znaleziony mecz, zwróci „Prawdą” Else Fałsz.
Dane wyjściowe pokazuje prawdziwe, co oznacza, że pożądany mecz został pomyślnie znaleziony.
Druga metoda
Poniżej podarowany fragment pokazuje inny sposób pisania wyrażenia od regularności w Javie:
boolean bol = wzór.skompilować(".I").Matcher („HI”).mecze();Tym razem używamy compile (), matcher (), I mecze() Metody za jednym razem.
Wyjście pokazuje, że nasz program działa poprawnie.
Trzecia metoda
Innym sposobem na napisanie wyrabiarki jest to, że możemy bezpośrednio wykorzystać mecze() Metoda klasy mechera z klasą wzorców i w nawiasie, określamy „wzór”I ciąg, z którym chcemy się dopasować.
boolean bol = wzór.mecze(".I ”,„ Cześć ”);Pełny kod i odpowiednie wyjście pokazano na poniższym fragmencie:
Wyjście uwierzytelnia działanie powyższego programu.
Wniosek
Regex to sekwencja znaków, które definiują wzorce wyszukiwania, które można użyć do wyszukiwania, manipulowania i edytowania ciągu. Regex może być napisany na wiele sposobów, podejście do pisania Regex może być inne, jednak musimy wykorzystać skompilować() metoda klasy wzorców i mecze() Metoda klas mecherowych w każdym podejściu. Ten zapis przedstawia szczegółowy przegląd pisania wyrażenia regularnego i dla lepszego zrozumienia, wyjaśnia wszystkie niezbędne aspekty wyrażeń regularnych, takie jak kwantyfikatory, metacharacters i tak dalej.