Ako používať Regex Whitespace v Jave

Ako Pouzivat Regex Whitespace V Jave



Regex alebo regulárny výraz je skupina špeciálnych znakov, ktoré sa kombinujú a vytvárajú vzor na vyhľadávanie znakov v reťazcoch. V počítačovom programovaní a softvérovom inžinierstve bude učenie regulárneho výrazu veľmi užitočné pri hľadaní informácií v akomkoľvek texte. Všetky druhy operácií vyhľadávania, formátovania a nahrádzania textu možno vykonávať pomocou regulárnych výrazov.

Tento tutoriál vás prevedie používaním medzery regulárneho výrazu v jazyku Java.







Čo je Regex v jazyku Java?

Regulárny výraz alebo regulárny výraz môžu byť také jednoduché ako jeden znak alebo zložitý vzor. Môže byť vytvorený pomocou reťazca textu a symbolov v určitom poradí. Väčšina znakov v regulárnom výraze sú písmená a typografické symboly. Regex rozlišuje veľké a malé písmená, takže na to pamätajte pri jeho vytváraní a používaní.



Ako používať Regex Whitespace v Jave?

Hoci Java nemá žiadnu preddefinovanú triedu regulárnych výrazov. Regulárne výrazy však môžeme použiť importovaním súboru „ java.util.regex “knižnica. Zahŕňa niektoré triedy, ako napr. Vzor “, ktorý sa používa na definovanie vzoru regulárneho výrazu a „ zápasy ” trieda, ktorá sa používa na vyhľadávanie so vzorom.



Existujú dva spôsoby, ako použiť medzery regulárnych výrazov v jazyku Java takto:





    • Použitie metódy Pattern.matches() (použite preddefinovaný regulárny výraz)
    • Použitie triedy Pattern a Matcher (vytvorte používateľom definovaný regulárny výraz, aby sa zhodoval)

Pozrime sa, ako budú tieto metódy fungovať s regulárnym výrazom pre medzery v Jave.

Metóda 1: Použite preddefinované medzery regulárneho výrazu s metódou Pattern.matches() v jazyku Java

Ak chcete nájsť medzery v reťazci, v jazyku Java existujú tri bežné regulárne výrazy:



    • \s : Predstavuje jeden biely priestor.
    • \s+ : Označuje viacero bielych miest.
    • \u0020 : Je to Unicode bieleho miesta používaného ako regulárny výraz na nájdenie medzier v texte.

Tieto regulárne výrazy môžeme použiť v statickej metóde “ zápasy() “z “ Vzor ' trieda. Trieda vzorov patrí do „ java.util.regex “balíček. Nižšie je uvedená syntax metódy Pattern.matches():

Syntax

Vzor.zhoduje sa ( '\s' , '' ) ;


Zadaná metóda vyžaduje dva argumenty: regulárny výraz a reťazec, ktorý sa má zhodovať. Prvý argument „\s“ je regulárny výraz alebo regulárny výraz medzery a druhý argument ““ je medzera v reťazci. Ako boolovskú hodnotu vráti hodnotu true alebo false.

Príklad 1: Použite „\s“ WhiteSpace Regex

Tu použijeme „ \s ” regulárny výraz v metóde Pattern.matches(). Ako druhý argument odovzdáme reťazec bez medzery v metóde. Metóda skontroluje regulárny výraz a reťazec a potom vráti boolovskú hodnotu, ktorá bude uložená v „ zápas ” premenná:

boolovská hodnota zápas = Vzor.zhoduje sa ( '\s' , '' ) ;


Vytlačte hodnotu premennej zhody pomocou „ System.out.println() “ metóda:

System.out.println ( 'Vesmír existuje:' + zápas ) ;



Hodnota vrátená „ Pattern.matches() 'metóda je' falošný ” pretože odovzdaný reťazec nemá medzeru:


Teraz uvidíme niekoľko ďalších príkladov na priradenie medzier s inými regulárnymi výrazmi.

Príklad 2: Použite „\s+“ WhiteSpace Regex

V tomto príklade prejdeme „ \s+ “regulárny výraz v “ zápasy() ” metóda na nájdenie viacerých medzier:

boolovská hodnota zápas = Vzor.zhoduje sa ( '\s+' , '' ) ;


Vytlačte hodnotu premennej zhody, ktorá ukladá vrátený výsledok z metódy:

System.out.println ( 'Vesmír existuje:' + zápas ) ;



Keďže druhý argument obsahuje medzery, výsledná hodnota sa zobrazí ako „ pravda “:

Príklad 3: Použite „\u0020“ WhiteSpace Regex

Tu vám ukážeme, ako sa Unicode používa ako regulárny výraz v Jave. Na špecifikovaný účel použijeme „ \u0020 ” regulárny výraz ako Unicode bieleho miesta:

boolovská hodnota zápas = Vzor.zhoduje sa ( '\u0020' , '' ) ;


Vytlačte vrátenú hodnotu:

System.out.println ( 'Vesmír existuje:' + zápas ) ;



Metóda Pattern.matches() vypíše „ pravda ” ako odovzdaný reťazec obsahujúci biele medzery:


Prejdime na inú metódu použitia regulárneho výrazu v jazyku Java.

Metóda 2: Použite používateľom definované medzery regulárneho výrazu so vzorom a triedou Matcher

' Vzor Trieda “ sa používa na definovanie alebo vytvorenie vzoru, zatiaľ čo trieda “ zápasy ” sa používa na vyhľadávanie podľa daného vzoru. Vzor pre regulárny výraz možno vytvoriť pomocou „ kompilovať () ” metóda triedy Pattern. Vyžaduje si to len jeden parameter, vzor, ​​ktorý chcete zostaviť na akýkoľvek účel.

Syntax

Vzor.kompilovať ( ' \t \p{Zs}' ) ;


The zápasy trieda zodpovedá vzoru pomocou „ zápasy() “. Chce to „ reťazec “ ako vzor.

Syntax

patternVariable.matcher ( reťazec ) ;


Existuje niekoľko preddefinovaných regulárnych výrazov pre medzery, o ktorých sme hovorili vyššie, ostatné sú uvedené nižšie:

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

Teraz sa pozrime na niekoľko príkladov.

Príklad 1: Použite „\\t\\p{Zs}“ WhiteSpace Regex

V tomto príklade zistíme počet medzier ich spočítaním. Najprv vytvoríme reťazec “ s “ a vytlačte si ho na konzole:

Reťazec s = 'WelcometoLinuxHint' ;
System.out.println ( s ) ;


Ďalej definujeme vzor „ \\t\\p{Zs} “, ktorý funguje ako regulárny výraz v jazyku Java a rovná sa „ \s “. Po zostavení daného vzoru sa premenná „ regulárny vzor ” bude obsahovať výslednú hodnotu:

Vzorový regexVzor = Vzor.kompilácia ( '\ \t \\p{Zs}' ) ;


Zavolajte na „ zápasy() “metóda a prejsť” s “Reťazec:

Matcher stringSpaces = regexPattern.matcher ( s ) ;


Vytvorte premennú typu celé číslo “ počítať “ a inicializujte ho hodnotou „ 0 “:

int počet = 0 ;


Spočítajte počet medzier, ktoré existujú v reťazci, pomocou „ zatiaľ čo “slučka. Slučka prejde cez reťazec a zvýši hodnotu premennej počtu, ak narazí na medzeru:

zatiaľ čo ( stringSpaces.find ( ) ) {
počet++;
}


Nakoniec vytlačte hodnotu count, aby ste ukázali, koľko medzier sa nachádza v reťazci:

System.out.println ( 'Reťazec obsahuje' +počítať+ 'medzery' ) ;


Výkon



Príklad 2: Použite „\p{Zs}“ WhiteSpace Regex

Teraz nájdeme medzery v reťazci pomocou iného vzoru “ \p{Zs} “. Tento vzorec funguje podobne ako „ \s “ a „ \s+ “regulárny výraz:

Vzorový regexVzor = Vzor.kompilácia ( '\\p{Zs}' ) ;


Teraz nazývame „ zápasy() “metóda a prejsť” s Reťazec ako argument:

Matcher stringSpaces = regexPattern.matcher ( s ) ;


Rovnako ako vo vyššie uvedenom príklade používame aj „ zatiaľ čo ” slučka na spočítanie medzier v reťazci a ich vytlačenie:



Daný výstup naznačuje, že náš reťazec „ Vitajte v Linux Hint “ obsahuje tri medzery:



Kompilujeme všetky najjednoduchšie metódy, ktoré vám môžu pomôcť používať medzery regulárnych výrazov v jazyku Java.

Záver

Existuje veľa regulárnych výrazov pre medzery, ako napríklad „ \s “, “ \s+ “, “ \u0020 “, “ \\t\\p{Zs} “ a „ \\p{Zs} “. Tieto regulárne výrazy sa používajú v metóde match() triedy Pattern alebo definovaním vzoru s triedou Pattern a porovnávaním pomocou triedy Matcher. Najčastejšie používanými medzerami regulárneho výrazu sú \s a \s+. V tomto návode sme sa zaoberali všetkými metódami používania regexových medzier v Jave.