Java karakterlánc felosztás ()

A Java String split () metódus felosztja a karaktersorozatot a megadott regexen, és visszaadja egy tömb részláncot.

A string split()metódus szintaxisa :

 string.split(String regex, int limit)

Itt a karakterlánc az Stringosztály objektuma .

split () Paraméterek

A string split()metódusnak két paramétere lehet:

  • regex - a karakterlánc ezen a regexen van felosztva (karakterláncok lehetnek)
  • limit (opcionális) - szabályozza az eredményül kapott alsorszámok számát

Ha a limitparaméter nem kerül átadásra, split()akkor az összes lehetséges alszöveget visszaadja.

split () Return Value

  • töredéke adja vissza az alszövegeket

Megjegyzés: Ha a továbbított reguláris kifejezés split()érvénytelen, a split()módszer PatternSyntaxExpressionkivételt hoz.

1. példa: split () Korlátozás nélkül Paraméter

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

Kimenet

 eredmény = (a, b, c, d: e)

Itt osztottuk fel a húrt ::. Mivel a limitparaméter nem kerül átadásra, a visszaküldött tömb tartalmazza az összes részt.

split () Korlátozott paraméterrel

  • Ha a limitparaméter értéke 0 vagy negatív, split()akkor egy tömböt ad vissza, amely az összes alszalagot tartalmazza.
  • Ha a limitparaméter pozitív (mondjuk n), split()akkor az nalsztringek maximumát adja vissza .

2. példa: split () korlátparaméterrel

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

Kimenet

 eredmény, ha a határ -2 = (a, bc, de, fg, h) eredmény, ha a határ 0 = (a, bc, de, fg, h) eredmény, ha a határ 2 = (a, bc: de: fg: h) eredmény, ha a határ 4 = (a, bc, de, fg: h) eredmény, ha a határ 10 = (a, bc, de, fg, h)

Megjegyzés: A split () metódus a regexet használja első argumentumként. Ha kell speciális karakterek, mint például: , |, ^, *, +stb, meg kell, hogy elkerülje ezeket a karaktereket. Például fel kell használnunk \+a kettéváláshoz +.

3. példa: split () a + karakternél

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

Kimenet

 eredmény = (a, e, f)

Itt egy karakterlánc felosztásához +használtuk \+. Ez azért +van, mert különleges karakter (különleges jelentése van a reguláris kifejezésekben).

érdekes cikkek...