Regex eller Regular Expression är en uppsättning specialtecken som kombineras för att bilda ett mönster för att söka efter tecken i strängar. Inom datorprogrammering och mjukvaruteknik kommer att lära sig regex vara till stor hjälp för att hitta information i vilken text som helst. Alla typer av textsökning, formatering och textersättningsoperationer kan utföras med hjälp av reguljära uttryck.
Denna handledning guidar dig om hur du använder regex-blankutrymmet i Java.
Vad är Regex i Java?
Ett reguljärt uttryck eller ett reguljärt uttryck kan vara så enkelt som ett enda tecken eller ett komplext mönster. Det kan skapas med en sträng av text och symboler i en viss ordning. De flesta tecken i ett regex är bokstäver och typografiska symboler. Regex är skiftlägeskänsligt, så tänk på det när du skapar och använder det.
Hur man använder Regex Whitespace i Java?
Även om Java inte har någon fördefinierad Regular Expression-klass. Men vi kan använda reguljära uttryck genom att importera ' java.util.regex ” bibliotek. Det inkluderar vissa klasser som ' Mönster ', som används för att definiera ett regexmönster, och ' Matcher ” klass som används för att söka med mönstret.
Det finns två metoder för att använda regex-blanksteg i Java enligt följande:
-
- Använder metoden Pattern.matches() (använd fördefinierat regex)
- Använda Pattern and Matcher class (skapa användardefinierat regex för att matcha)
Låt oss se hur dessa metoder fungerar med regex för blanksteg i Java.
Metod 1: Använd fördefinierat Regex Whitespace med Pattern.matches()-metoden i Java
För att hitta blanksteg i en sträng finns det tre vanliga regexes i Java:
-
- \s : Det representerar ett enda vitt utrymme.
- \s+ : Det indikerar flera vita blanksteg.
- \u0020 : Det är Unicode för det vita utrymmet som används som ett regex för att hitta blanksteg i en text.
Vi kan använda dessa regex i den statiska metoden ' tändstickor() ' av ' Mönster ' klass. Mönsterklassen tillhör ' java.util.regex ”paket. Nedan visas syntaxen för metoden Pattern.matches():
Syntax
Mönster.matchar ( '\s' , ' ' ) ;
Den angivna metoden kräver två argument: det reguljära uttrycket och strängen för att matcha. Det första argumentet '\s' är det reguljära uttrycket eller regexet för det vita utrymmet, och det andra argumentet ” “ är mellanslag i sträng. Det returnerar antingen sant eller falskt som ett booleskt värde.
Exempel 1: Använd '\s' WhiteSpace Regex
Här kommer vi att använda ' \s ” regex i metoden Pattern.matches(). Vi skickar en sträng utan mellanslag i metoden som ett andra argument. Metoden kontrollerar regex och strängen och returnerar sedan ett booleskt värde som kommer att lagras i ' match ' variabel:
booleskt match = Mönster.matchningar ( '\s' , '' ) ;
Skriv ut värdet på matchningsvariabeln med ' System.out.println() ' metod:
Värdet som returneras av ' Pattern.matches() 'metoden är' falsk ' eftersom den skickade strängen inte har något mellanslag:
Nu kommer vi att se några andra exempel för att matcha blanksteg med andra regex.
Exempel 2: Använd '\s+' WhiteSpace Regex
I det här exemplet kommer vi att skicka ' \s+ ' regex i ' tändstickor() ” metod för att hitta flera mellanslag:
booleskt match = Mönster.matchningar ( '\s+' , ' ' ) ;
Skriv ut värdet på matchningsvariabeln som lagrar det returnerade resultatet från metoden:
Eftersom det andra argumentet innehåller mellanslag, visas det resulterande värdet som ' Sann ”:
Exempel 3: Använd '\u0020' WhiteSpace Regex
Här kommer vi att visa dig hur Unicode används som ett regex i Java. För det angivna ändamålet kommer vi att använda ' \u0020 ” regex som Unicode för det vita utrymmet:
booleskt match = Mönster.matchningar ( '\u0020' , ' ' ) ;
Skriv ut det returnerade värdet:
Metoden Pattern.matches() kommer att skriva ut ' Sann ” som en passerad sträng som innehåller blanksteg:
Låt oss gå till den andra metoden för att använda regex i Java.
Metod 2: Använd användardefinierat Regex Whitespace med Pattern and Matcher class
den ' Mönster ' klass används för att definiera eller skapa ett mönster, medan ' Matcher ” klass används för att söka enligt det givna mönstret. Mönstret för ett regex kan skapas med hjälp av ' sammanställa() ”-metoden för Pattern-klassen. Det krävs bara en parameter, mönstret du vill kompilera för alla ändamål.
Syntax
Pattern.compile ( ' \t \p{Zs}' ) ;
De Matcher klass matchar mönstret genom att använda ' matcher() 'metoden. Det tar en ' sträng ” som mönstret.
Syntax
patternVariable.matcher ( sträng ) ;
Det finns några fördefinierade regex för blanksteg som vi har diskuterat ovan, de återstående är listade nedan:
-
- \\t\\p{Zs}
- \\p{Zs}
Låt oss nu kolla in några exempel.
Exempel 1: Använd '\\t\\p{Zs}' WhiteSpace Regex
I det här exemplet kommer vi att ta reda på antalet blanksteg genom att räkna dem. Först skapar vi en sträng ' s ' och skriv ut det på konsolen:
Sträng s = 'Välkommen tillLinuxHint' ;System.out.println ( s ) ;
Därefter kommer vi att definiera ett mönster ' \\t\\p{Zs} ' som fungerar som ett blankstegsregex i Java och är lika med ' \s ”. Efter att ha kompilerat det givna mönstret, variabel ' regexmönster ” kommer att innehålla resulterande värde:
Ring ' matcher() ' metod och godkänt ' s ' Sträng:
Skapa en heltalstypvariabel ' räkna ' och initiera den med värdet ' 0 ”:
Räkna antalet blanksteg som finns i strängen genom att använda en ' medan ” slinga. Slingan kommer att korsa strängen och öka värdet för räknevariabeln om den stöter på något mellanslag:
räkna++;
}
Skriv slutligen ut värdet för count för att visa hur många blanksteg som finns i en sträng:
Produktion
Exempel 2: Använd '\p{Zs}' WhiteSpace Regex
Nu kommer vi att hitta blanksteg i strängen genom att använda ett annat mönster ' \p{Zs} ”. Detta mönster fungerar på samma sätt som ' \s ' och ' \s+ ” regex:
Pattern regexPattern = Pattern.compile ( '\\p{Zs}' ) ;
Nu kallar vi ' matcher() ' metod och godkänt ' s ' Sträng som argument:
Som i exemplet ovan använder vi också en ' medan ” loop för att räkna mellanrummen i en sträng och skriva ut dem:
Den givna utdata indikerar att vår sträng ' Välkommen till Linux-tips ” innehåller tre blanksteg:
Vi sammanställer alla de enklaste metoderna som kan hjälpa dig att använda regex-blanksteg i Java.
Slutsats
Det finns många reguljära uttryck för blanksteg som ' \s ”, “ \s+ ”, “ \u0020 ”, “ \\t\\p{Zs} ', och ' \\p{Zs} ”. Dessa regexes används i metoden matches() för Pattern-klassen eller genom att definiera ett mönster med Pattern Class och matcha det med Matcher-klassen. Det vanligaste blanktecken för regex är \s och \s+. I den här handledningen täckte vi alla metoder för att använda regex-blanksteg i Java.