Java String split ()

Metoden Java String split () deler strengen ved den angivne regex og returnerer en matrix af understrenge.

Syntaksen for strengemetoden split()er:

 string.split(String regex, int limit)

Her er streng et objekt i Stringklassen.

split () Parametre

Strengmetoden split()kan tage to parametre:

  • regex - strengen deles ved denne regex (kan være strenge)
  • grænse (valgfri) - styrer antallet af resulterende underlag

Hvis limitparameteren ikke er bestået, split()returneres alle mulige understrenge.

split () Return Value

  • returnerer en matrix af understrenge

Bemærk: Hvis det regulære udtryk, der sendes til, split()er ugyldigt, split()hæver metoden PatternSyntaxExpressionundtagelse.

Eksempel 1: split () Uden grænse 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)); ) )

Produktion

 resultat = (a, b, c, d: e)

Her deler vi strengen på ::. Da limitparameteren ikke overføres, indeholder den returnerede matrix alle understrengene.

split () Med grænse Parameter

  • Hvis limitparameteren er 0 eller negativ, split()returneres en matrix, der indeholder alle understrenge.
  • Hvis limitparameteren er positiv (lad os sige n), split()returnerer det maksimale antal nunderstrenge.

Eksempel 2: split () med grænseparameter

 // 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)); ) )

Produktion

 resultat, når grænsen er -2 = (a, bc, de, fg, h) resultat, når grænsen er 0 = (a, bc, de, fg, h) resultat, når grænsen er 2 = (a, bc: de: fg: h) resultat, når grænsen er 4 = (a, bc, de, fg: h) resultat, når grænsen er 10 = (a, bc, de, fg, h)

Bemærk: Metoden split () tager regex som det første argument. Hvis du skal bruge specialtegn såsom: , |, ^, *, +osv, du har brug for at undslippe disse tegn. For eksempel skal vi bruge til \+at opdele ved +.

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)); ) )

Produktion

 resultat = (a, e, f)

Her, for at dele en streng på +, har vi brugt \+. Det er fordi det +er en speciel karakter (har en særlig betydning i regulære udtryk).

Interessante artikler...