Java String split ()

Metoda Java String split () împarte șirul la regexul specificat și returnează o matrice de șiruri de caractere.

Sintaxa split()metodei șirului este:

 string.split(String regex, int limit)

Aici, șirul este un obiect al Stringclasei.

split () Parametri

Metoda șirului split()poate lua doi parametri:

  • regex - șirul este împărțit la această regex (pot fi șiruri)
  • limit (opțional) - controlează numărul de șiruri rezultate

Dacă limitparametrul nu este trecut, split()returnează toate șirurile de caractere posibile.

split () Valoare returnată

  • returnează o matrice de șiruri de caractere

Notă: Dacă expresia regulată transmisă nu split()este validă, split()metoda ridică PatternSyntaxExpressionexcepția.

Exemplul 1: split () Parametru fără limită

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

Ieșire

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

Aici, împărțim șirul la ::. Deoarece limitparametrul nu este trecut, matricea returnată conține toate șirurile.

split () Cu parametru limită

  • Dacă limitparametrul este 0 sau negativ, split()returnează o matrice care conține toate șirurile.
  • Dacă limitparametrul este pozitiv (să zicem n), split()returnează maximul de nșiruri de caractere.

Exemplul 2: split () Cu parametru de limită

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

Ieșire

 rezultă când limita este -2 = (a, bc, de, fg, h) rezultă când limita este 0 = (a, bc, de, fg, h) rezultă când limita este 2 = (a, bc: de: fg: h) rezulta când limita este 4 = (a, bc, de, fg: h) rezulta când limita este 10 = (a, bc, de, fg, h)

Notă: Metoda split () ia regex ca prim argument. Dacă trebuie să utilizați caractere speciale , cum ar fi: , |, ^, *, +etc, aveți nevoie pentru a scăpa de aceste caractere. De exemplu, trebuie să folosim \+pentru a împărți la +.

Exemplul 3: split () la + caracter

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

Ieșire

 rezultat = (a, e, f)

Aici, pentru a împărți un șir la +, am folosit \+. Este pentru că +este un personaj special (are o semnificație specială în expresiile regulate).

Articole interesante...