Java String split () -metoden deler strengen ved den angitte regexen og returnerer en rekke understrenger.
Syntaksen til strengmetoden split()
er:
string.split(String regex, int limit)
Her er streng et objekt i String
klassen.
split () Parametere
Strengmetoden split()
kan ta to parametere:
- regex - strengen er delt på denne regexen (kan være strenger)
- limit (valgfritt) - styrer antall resulterende understrenger
Hvis limit
parameteren ikke passeres, split()
returnerer alle mulige understreng.
split () Returverdi
- returnerer en rekke understrenger
Merk: Hvis det regulære uttrykket som sendes til, split()
er ugyldig, gir split()
metoden PatternSyntaxExpression
unntak.
Eksempel 1: split () Uten grense Parameter
// importing Arrays to convert array to string // used for printing arrays import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a::b::c::d:e"; // splitting the string at "::" // storing the result in an array of strings String() result = vowels.split("::"); // converting array to string and printing it System.out.println("result = " + Arrays.toString(result)); ) )
Produksjon
resultat = (a, b, c, d: e)
Her deler vi strengen på ::
. Siden limit
parameteren ikke sendes, inneholder den returnerte matrisen alle understrengene.
split () With limit Parameter
- Hvis
limit
parameteren er 0 eller negativ,split()
returneres en matrise som inneholder alle understrengene. - Hvis
limit
parameteren er positiv (la oss sin
),split()
returnerer maksimalt antalln
understreng.
Eksempel 2: splitt () Med grenseparameter
// importing Arrays to convert array to string import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a:bc:de:fg:h"; // splitting array at ":" // limit is -2; array contins all substrings String() result = vowels.split(":", -2); System.out.println("result when limit is -2 = " + Arrays.toString(result)); // limit is 0; array contains all substrings result = vowels.split(":", 0); System.out.println("result when limit is 0 = " + Arrays.toString(result)); // limit is 2; array contains a maximum of 2 substrings result = vowels.split(":", 2); System.out.println("result when limit is 2 = " + Arrays.toString(result)); // limit is 4; array contains a maximum of 4 substrings result = vowels.split(":", 4); System.out.println("result when limit is 4 = " + Arrays.toString(result)); // limit is 10; array contains a maximum of 10 substrings result = vowels.split(":", 10); System.out.println("result when limit is 10 = " + Arrays.toString(result)); ) )
Produksjon
resultat når grense er -2 = (a, bc, de, fg, h) resultat når grense er 0 = (a, bc, de, fg, h) resultat når grense er 2 = (a, bc: de: fg: h) resultat når grense er 4 = (a, bc, de, fg: h) resultat når grense er 10 = (a, bc, de, fg, h)
Merk: Den split () metode tar regulært uttrykk som det første argumentet. Hvis du trenger å bruke spesialtegn som: ,
|
, ^
, *
, +
etc, må du unnslippe disse tegnene. For eksempel må vi bruke \+
til å dele på +
.
Eksempel 3: del () ved + tegnet
// importing Arrays to convert array to string // used for printing arrays import java.util.Arrays; class Main ( public static void main(String() args) ( String vowels = "a+e+f"; // splitting the string at "+" String() result = vowels.split("\+"); // converting array to string and printing it System.out.println("result = " + Arrays.toString(result)); ) )
Produksjon
resultat = (a, e, f)
Her, for å dele en streng på +
, har vi brukt \+
. Det er fordi det +
er en spesiell karakter (har en spesiell betydning i vanlige uttrykk).