„Java“ eilutės padalijimas ()

„Java String split ()“ metodas padalija eilutę nurodytame regexe ir grąžina pakraščių masyvą.

Stygos split()metodo sintaksė yra:

 string.split(String regex, int limit)

Čia eilutė yra klasės objektas String.

split () parametrai

Stygos split()metodas gali turėti du parametrus:

  • regex - eilutė yra padalinta šiame regex (gali būti eilutės)
  • riba (pasirinktinai) - kontroliuoja gautų pakraščių skaičių

Jei limitparametras neperduodamas, split()pateikia visas galimas pakraščių eilutes.

split () grąžinimo vertė

  • pateikia pakraščių masyvą

Pastaba: jei reguliarioji išraiška, perduodama split()neteisingai, split()metodas sukelia PatternSyntaxExpressionišimtį.

1 pavyzdys: split () be apribojimų parametras

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

Rezultatas

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

Čia mes padalijome eilutę ::. Kadangi limitparametras neperduodamas, grąžinamame masyve yra visos eilutės.

split () su ribiniu parametru

  • Jei limitparametras yra 0 arba neigiamas, split()pateikia masyvą, kuriame yra visi pakraščiai.
  • Jei limitparametras yra teigiamas (tarkime n), split()pateikia maksimalų npakraščių skaičių.

2 pavyzdys: split () su ribiniu parametru

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

Rezultatas

 rezultatas, kai riba yra -2 = (a, bc, de, fg, h) rezultatas, kai riba yra 0 = (a, bc, de, fg, h) rezultatas, kai riba yra 2 = (a, bc: de: fg: h) rezultatas, kai riba yra 4 = (a, bc, de, fg: h) rezultatas, kai riba yra 10 = (a, bc, de, fg, h)

Pastaba: Split () metodas trunka reguliariuosius reiškinius kaip pirmojo argumento. Jei jums reikia naudoti specialiuosius simbolius, kaip antai: , |, ^, *, +ir tt, jums reikia pabėgti šiuos simbolius. Pavyzdžiui, mes turime naudoti \+suskaidyti +.

3 pavyzdys: split () ženkle +

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

Rezultatas

 rezultatas = (a, e, f)

Čia, norėdami padalyti eilutę +, mes naudojome \+. Taip yra todėl, kad +yra ypatingas personažas (turi ypatingą reikšmę reguliariajame posakyje).

Įdomios straipsniai...