Java-merkkijonon jako ()

Java String split () -menetelmä jakaa merkkijonon määritetyllä regexillä ja palauttaa joukon alijonoja.

Merkkijonomenetelmän syntaksi split()on:

 string.split(String regex, int limit)

Tässä merkkijono on Stringluokan objekti .

split () -parametrit

Merkkijonomenetelmässä split()voi olla kaksi parametria:

  • regex - merkkijono on jaettu tällä regexillä (voi olla merkkijonoja)
  • raja (valinnainen) - ohjaa tuloksena olevien alaosien määrää

Jos limitparametria ei välitetä, split()palauttaa kaikki mahdolliset alaotsakkeet.

split () Palautusarvo

  • palauttaa joukon alaotsakkeita

Huomaa: Jos säännöllinen lauseke, johon välitetään, split()on virheellinen, split()menetelmä aiheuttaa PatternSyntaxExpressionpoikkeuksen.

Esimerkki 1: split () ilman rajoitusta Parametri

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

Tuotos

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

Tässä jaoimme merkkijonon ::. Koska limitparametria ei välitetä, palautettu taulukko sisältää kaikki alaotsikot.

split () raja-parametrilla

  • Jos limitparametri on 0 tai negatiivinen, split()palauttaa matriisin, joka sisältää kaikki alaotsikot.
  • Jos limitparametri on positiivinen (sanotaan n), split()palauttaa nalaotsakkeiden enimmäismäärän .

Esimerkki 2: split () raja-parametrilla

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

Tuotos

 tulos, kun raja on -2 = (a, bc, de, fg, h) tulos, kun raja on 0 = (a, bc, de, fg, h) tulos, kun raja on 2 = (a, bc: de: fg: h) tulos, kun raja on 4 = (a, bc, de, fg: h) tulos, kun raja on 10 = (a, bc, de, fg, h)

Huomautus: split () menetelmä ottaa regex ensimmäisenä argumenttina. Jos haluat käyttää erikoismerkkejä kuten: , |, ^, *, +jne, sinun täytyy paeta näitä merkkejä. Meidän on esimerkiksi käytettävä \+jakamista +.

Esimerkki 3: split () + -merkissä

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

Tuotos

 tulos = (a, e, f)

Tässä, jos haluat jakaa merkkijonon +, olemme käyttäneet \+. Se johtuu siitä, että +se on erikoismerkki (sillä on erityinen merkitys säännöllisissä lausekkeissa).

Mielenkiintoisia artikkeleita...