Kako uporabljati presledek regularnega izraza v Javi

Kako Uporabljati Presledek Regularnega Izraza V Javi



Regex ali regularni izraz je nabor posebnih znakov, ki skupaj tvorijo vzorec za iskanje znakov v nizih. Pri računalniškem programiranju in programskem inženirstvu bo učenje regularnega izraza zelo koristno pri iskanju informacij v katerem koli besedilu. Z uporabo regularnih izrazov je mogoče izvesti vse vrste operacij iskanja besedila, oblikovanja in zamenjave besedila.

Ta vadnica vas bo vodila o uporabi presledka regularnega izraza v Javi.







Kaj je Regex v Javi?

Regularni izraz ali regularni izraz je lahko preprost kot en znak ali zapleten vzorec. Ustvarite ga lahko z nizom besedila in simbolov v določenem vrstnem redu. Večina znakov v regularnem izrazu so črke in tipografski simboli. Regex je občutljiv na velike in male črke, zato upoštevajte to, ko ga ustvarjate in uporabljate.



Kako uporabiti presledek regularnega izraza v Javi?

Čeprav Java nima vnaprej določenega razreda regularnega izraza. Vendar pa lahko uporabimo regularne izraze tako, da uvozimo » java.util.regex ' knjižnica. Vključuje nekaj razredov, kot je ' Vzorec «, ki se uporablja za definiranje vzorca regularnega izraza, in » Tekme ”, ki se uporablja za iskanje z vzorcem.



Obstajata dva načina za uporabo presledka regularnega izraza v Javi, kot sledi:





    • Uporaba metode Pattern.matches() (uporaba vnaprej določenega regularnega izraza)
    • Uporaba razreda Pattern and Matcher (ustvari uporabniško definiran regularni izraz za ujemanje)

Poglejmo, kako bodo te metode delovale z regularnim izrazom za presledke v Javi.

1. način: uporaba vnaprej določenega presledka regularnega izraza z metodo Pattern.matches() v Javi

Za iskanje presledkov v nizu so v Javi trije običajni regularni izrazi:



    • \s : Predstavlja en sam prazen prostor.
    • \s+ : Označuje več belih prostorov.
    • \u0020 : To je Unicode praznega prostora, ki se uporablja kot regularni izraz za iskanje praznega prostora v besedilu.

Te regularne izraze lahko uporabimo v statični metodi ' ujema se() ' od ' Vzorec ” razred. Razred vzorcev spada v ' java.util.regex ” paket. Spodaj je podana sintaksa metode Pattern.matches():

Sintaksa

Vzorec.ujema se ( '\s' , ' ' ) ;


Podana metoda sprejme dva argumenta: regularni izraz in niz, ki se ujema. Prvi argument »\s« je regularni izraz ali regularni izraz praznega prostora, drugi argument pa ” “ je presledek v nizu. Kot logično vrednost vrne true ali false.

1. primer: uporabite »\s« WhiteSpace Regex

Tukaj bomo uporabili ' \s ” regex v metodi Pattern.matches(). Kot drugi argument bomo posredovali niz brez presledka v metodi. Metoda bo preverila regularni izraz in niz ter nato vrnila logično vrednost, ki bo shranjena v ' tekma ” spremenljivka:

logično tekma = Vzorec.se ujema ( '\s' , '' ) ;


Natisnite vrednost spremenljivke ujemanja z uporabo “ System.out.println() ” metoda:

System.out.println ( 'Vesolje obstaja:' + tekma ) ;



Vrednost, ki jo vrne » Pattern.matches() 'metoda je' lažno ”, ker posredovani niz nima presledka:


Zdaj bomo videli nekaj drugih primerov za ujemanje presledkov z drugimi regularnimi izrazi.

Primer 2: Uporabite “\s+” WhiteSpace Regex

V tem primeru bomo posredovali » \s+ ' regex v ' ujema se() ” za iskanje več presledkov:

logično tekma = Vzorec.se ujema ( '\s+' , ' ' ) ;


Natisnite vrednost spremenljivke ujemanja, ki shrani rezultat, vrnjen iz metode:

System.out.println ( 'Vesolje obstaja:' + tekma ) ;



Ker drugi argument vsebuje presledke, je posledična vrednost prikazana kot ' prav ”:

3. primer: uporabite »\u0020« WhiteSpace Regex

Tukaj vam bomo pokazali, kako se Unicode uporablja kot regularni izraz v Javi. Za navedeni namen bomo uporabili » \u0020 ” regex kot Unicode praznega prostora:

logično tekma = Vzorec.se ujema ( '\u0020' , ' ' ) ;


Natisnite vrnjeno vrednost:

System.out.println ( 'Vesolje obstaja:' + tekma ) ;



Metoda Pattern.matches() bo natisnila ' prav ” kot posredovan niz, ki vsebuje presledke:


Preidimo na drugo metodo za uporabo regularnega izraza v Javi.

2. način: Uporabite uporabniško definiran presledek regularnega izraza z razredom Pattern in Matcher

' Vzorec ' se uporablja za definiranje ali ustvarjanje vzorca, medtem ko ' Tekme ” se uporablja za iskanje po danem vzorcu. Vzorec za regularni izraz lahko ustvarite s pomočjo ' prevesti () ” razreda Pattern. Potrebuje samo en parameter, vzorec, ki ga želite sestaviti za kateri koli namen.

Sintaksa

Pattern.compile ( ' \t \p{Zs}' ) ;


The Tekme razred ujema z vzorcem z uporabo ' ujema se() ” metoda. Potreben je ' vrvica « kot vzorec.

Sintaksa

patternVariable.matcher ( vrvica ) ;


Obstaja nekaj vnaprej določenih regularnih izrazov za presledke, o katerih smo razpravljali zgoraj, preostali pa so navedeni spodaj:

    • \\t\\p{Zs}
    • \\p{Zs}

Zdaj pa si oglejmo nekaj primerov.

Primer 1: Uporabite “\\t\\p{Zs}” WhiteSpace Regex

V tem primeru bomo ugotovili število presledkov tako, da jih preštejemo. Najprej bomo ustvarili niz ' s « in ga natisnite na konzoli:

Niz s = 'Dobrodošli v LinuxHint' ;
System.out.println ( s ) ;


Nato bomo definirali vzorec ' \\t\\p{Zs} «, ki v Javi deluje kot regularni izraz za presledek in je enak » \s ”. Po prevajanju podanega vzorca se spremenljivka ' regexPattern ” bo vseboval končno vrednost:

Vzorec regexPattern = Pattern.compile ( '\ \t \\p{Zs}' ) ;


Pokličite ' ujema se() »metoda in prehod« s ' Vrvica:

Ujemanje stringSpaces = regexPattern.matcher ( s ) ;


Ustvari spremenljivko tipa celo število ' štetje ' in ga inicializirajte z vrednostjo ' 0 ”:

int count = 0 ;


Preštejte število presledkov v nizu z uporabo ' medtem ” zanke. Zanka bo prečkala niz in povečala vrednost spremenljivke štetja, če naleti na presledek:

medtem ( stringSpaces.find ( ) ) {
štetje++;
}


Na koncu natisnite vrednost count, da pokažete, koliko presledkov je v nizu:

System.out.println ( 'Niz vsebuje' +štetje+ 'prostori' ) ;


Izhod



Primer 2: Uporabite “\p{Zs}” WhiteSpace Regex

Zdaj bomo presledke v nizu našli z uporabo drugega vzorca ' \p{Zs} ”. Ta vzorec deluje podobno kot ' \s « in » \s+ ” regularni izraz:

Vzorec regexPattern = Pattern.compile ( '\\p{Zs}' ) ;


Zdaj imenujemo ' ujema se() »metoda in prehod« s ” Niz kot argument:

Ujemanje stringSpaces = regexPattern.matcher ( s ) ;


Kot v zgornjem primeru uporabljamo tudi ' medtem ” zanko za štetje presledkov v nizu in njihovo tiskanje:



Podani izhod kaže, da je naš niz ' Dobrodošli v namig za Linux « vsebuje tri presledke:



Zberemo vse najlažje metode, ki vam lahko pomagajo pri uporabi presledka regularnega izraza v Javi.

Zaključek

Obstaja veliko regularnih izrazov za presledke, kot je ' \s ”, “ \s+ ”, “ \u0020 ”, “ \\t\\p{Zs} «, in » \\p{Zs} ”. Ti regularni izrazi se uporabljajo v metodi matches() razreda Pattern ali z definiranjem vzorca z razredom Pattern Class in njegovim ujemanjem z razredom Matcher. Najpogosteje uporabljen presledek regularnega izraza je \s in \s+. V tej vadnici smo zajeli vse metode za uporabo presledka regularnega izraza v Javi.