Sådan bruges Regex Whitespace i Java

Sadan Bruges Regex Whitespace I Java



Regex eller Regular Expression er et sæt specialtegn, der kombineres for at danne et mønster for at søge efter tegn i strenge. Inden for computerprogrammering og softwareudvikling vil det at lære regex være meget nyttigt til at finde information i enhver tekst. Alle former for tekstsøgning, formatering og teksterstatningsoperationer kan udføres ved hjælp af regulære udtryk.

Denne tutorial vil guide dig om at bruge regex-hvidrummet i Java.







Hvad er Regex i Java?

Et regulært udtryk eller regulært udtryk kan være så simpelt som et enkelt tegn eller et komplekst mønster. Det kan oprettes med en streng af tekst og symboler i en bestemt rækkefølge. De fleste af tegnene i et regex er bogstaver og typografiske symboler. Regex skelner mellem store og små bogstaver, så husk det, mens du opretter og bruger det.



Hvordan bruger man Regex Whitespace i Java?

Selvom Java ikke har nogen foruddefineret Regular Expression-klasse. Vi kan dog bruge regulære udtryk ved at importere ' java.util.regex ” bibliotek. Det inkluderer nogle klasser som ' Mønster ', som bruges til at definere et regex-mønster, og ' Tændstikker ” klasse som bruges til at søge med mønsteret.



Der er to metoder til at bruge regex whitespace i Java som følger:





    • Brug af Pattern.matches()-metoden (brug foruddefineret regex)
    • Brug af mønster- og matcher-klassen (opret brugerdefineret regex for at matche)

Lad os se, hvordan disse metoder vil fungere med regex til hvidt mellemrum i Java.

Metode 1: Brug foruddefineret Regex Whitespace med Pattern.matches()-metoden i Java

For at finde mellemrum i en streng er der tre almindelige regexes i Java:



    • \s : Det repræsenterer et enkelt hvidt mellemrum.
    • \s+ : Det angiver flere hvide mellemrum.
    • \u0020 : Det er Unicode for det hvide mellemrum, der bruges som et regex til at finde mellemrum i en tekst.

Vi kan bruge disse regexes i den statiske metode ' Tændstikker() ' af ' Mønster ' klasse. Mønsterklassen tilhører ' java.util.regex ' pakke. Nedenfor er syntaksen for Pattern.matches() metoden angivet:

Syntaks

Mønster.matcher ( '\s' , ' ' ) ;


Den angivne metode kræver to argumenter: det regulære udtryk og strengen for at matche. Det første argument '\s' er det regulære udtryk eller regex for det hvide mellemrum, og det andet argument ' ' er mellemrummet i streng. Den returnerer enten sand eller falsk som en boolsk værdi.

Eksempel 1: Brug '\s' WhiteSpace Regex

Her vil vi bruge ' \s ” regex i Pattern.matches()-metoden. Vi sender en streng uden mellemrum i metoden som et andet argument. Metoden kontrollerer regex og strengen og returnerer derefter en boolesk værdi, der vil blive gemt i ' match variabel:

boolesk match = Mønster.matches ( '\s' , '' ) ;


Udskriv værdien af ​​matchvariablen ved at bruge ' System.out.println() ” metode:

System.out.println ( 'Der er plads:' + match ) ;



Værdien returneret af ' Pattern.matches() 'metoden er' falsk fordi den beståede streng ikke har mellemrum:


Nu vil vi se nogle andre eksempler for at matche mellemrum med andre regexes.

Eksempel 2: Brug '\s+' WhiteSpace Regex

I dette eksempel vil vi videregive ' \s+ ' regex i ' Tændstikker() ” metode til at finde flere mellemrum:

boolesk match = Mønster.matches ( '\s+' , ' ' ) ;


Udskriv værdien af ​​matchvariablen, der gemmer det returnerede resultat fra metoden:

System.out.println ( 'Der er plads:' + match ) ;



Da det andet argument indeholder mellemrum, vises den resulterende værdi som ' rigtigt ”:

Eksempel 3: Brug '\u0020' WhiteSpace Regex

Her vil vi vise dig, hvordan Unicode bruges som et regex i Java. Til det angivne formål vil vi bruge ' \u0020 ” regex som Unicode af det hvide rum:

boolesk match = Mønster.matches ( '\u0020' , ' ' ) ;


Udskriv den returnerede værdi:

System.out.println ( 'Der er plads:' + match ) ;



Metoden Pattern.matches() vil udskrive ' rigtigt ' som en bestået streng, der indeholder hvide mellemrum:


Lad os gå til den anden metode til at bruge regex i Java.

Metode 2: Brug brugerdefineret Regex Whitespace med Pattern and Matcher klasse

Det ' Mønster '-klassen bruges til at definere eller skabe et mønster, mens ' Tændstikker ” klasse bruges til at søge efter det givne mønster. Mønsteret til et regex kan oprettes ved hjælp af ' udarbejde() ”-metoden i Pattern-klassen. Det kræver kun én parameter, det mønster, du vil kompilere til ethvert formål.

Syntaks

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


Det Tændstikker klasse matcher mønsteret ved at bruge ' Tændstikker() ” metode. Det kræver en ' snor ” som mønsteret.

Syntaks

patternVariable.matcher ( snor ) ;


Der er nogle foruddefinerede regex for hvide mellemrum, som vi har diskuteret ovenfor, de resterende er angivet nedenfor:

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

Lad os nu se nogle eksempler.

Eksempel 1: Brug '\\t\\p{Zs}' WhiteSpace Regex

I dette eksempel finder vi ud af antallet af mellemrum ved at tælle dem. Først vil vi oprette en streng ' s ” og print det ud på konsollen:

Streng s = 'Velkommen til Linux-tip' ;
System.out.println ( s ) ;


Dernæst vil vi definere et mønster ' \\t\\p{Zs} ', der fungerer som et blanktegnsregex i Java og er lig med ' \s ”. Efter kompilering af det givne mønster, variabel ' regexmønster ' vil indeholde resulterende værdi:

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


Ring til ' Tændstikker() ' metode og bestå ' s ' Streng:

Matcher stringSpaces = regexPattern.matcher ( s ) ;


Opret en heltalstypevariabel ' tælle ' og initialiser den med værdien ' 0 ”:

int antal = 0 ;


Tæl antallet af mellemrum, der findes i strengen ved at bruge en ' mens ” sløjfe. Sløjfen vil krydse strengen og øge tællevariabelværdien, hvis den støder på et mellemrum:

mens ( stringSpaces.find ( ) ) {
tælle++;
}


Til sidst skal du udskrive værdien af ​​count for at vise, hvor mange mellemrum der findes i en streng:

System.out.println ( 'String indeholder' +tæl+ 'mellemrum' ) ;


Produktion



Eksempel 2: Brug '\p{Zs}' WhiteSpace Regex

Nu vil vi finde mellemrummene i strengen ved at bruge et andet mønster ' \p{Zs} ”. Dette mønster fungerer på samme måde som ' \s ' og ' \s+ ' regex:

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


Nu kalder vi ' Tændstikker() ' metode og bestå ' s ' Streng som argument:

Matcher stringSpaces = regexPattern.matcher ( s ) ;


Som i ovenstående eksempel bruger vi også en ' mens ”-løkke for at tælle mellemrummene i en streng og udskrive dem:



Det givne output indikerer, at vores streng ' Velkommen til Linux-tip ' indeholder tre mellemrum:



Vi kompilerer alle de nemmeste metoder, der kan hjælpe dig med at bruge regex whitespace i Java.

Konklusion

Der er mange regulære udtryk for mellemrum såsom ' \s ', ' \s+ ', ' \u0020 ', ' \\t\\p{Zs} ', og ' \\p{Zs} ”. Disse regexes bruges i matches()-metoden i Pattern-klassen eller ved at definere et mønster med Pattern Class og matche det ved hjælp af Matcher-klassen. Det mest almindeligt anvendte mellemrum med regex er \s og \s+. I denne tutorial dækkede vi alle metoderne til at bruge regex whitespace i Java.