Java virknes sadalīšanas () metode sadala virkni norādītajā regex un atgriež apakšgrupu masīvu.
Virknes split()
metodes sintakse ir šāda:
string.split(String regex, int limit)
Šeit virkne ir String
klases objekts .
split () parametri
Virknes split()
metodei var būt divi parametri:
- regex - virkne ir sadalīta šajā regex (var būt virknes)
- limits (pēc izvēles) - kontrolē iegūto apakšvirkņu skaitu
Ja limit
parametrs netiek nodots, tiek split()
atgriezti visi iespējamie apakšvirsraksti.
split () Atgriešanās vērtība
- atgriež apakšvirsmu masīvu
Piezīme. Ja regulārā izteiksme, kurai nodots, split()
nav derīgs, split()
metode rada PatternSyntaxExpression
izņēmumu.
1. piemērs: split () Bez ierobežojuma parametrs
// 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)); ) )
Rezultāts
rezultāts = (a, b, c, d: e)
Lūk, mēs sadalījām virkni plkst ::
. Tā kā limit
parametrs netiek nodots, atgrieztajā masīvā ir visi apakšvirknes.
split () Ar ierobežojošo parametru
- Ja
limit
parametrs ir 0 vai negatīvs,split()
atgriež masīvu, kurā ir visi apakšvirsraksti. - Ja
limit
parametrs ir pozitīvs (teiksimn
),split()
atgriežn
apakšvirsmu maksimumu .
2. piemērs: split () ar ierobežojošo 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)); ) )
Rezultāts
rezultāts, kad robeža ir -2 = (a, bc, de, fg, h) rezultāts, kad robeža ir 0 = (a, bc, de, fg, h) rezultāts, kad robeža ir 2 = (a, bc: de: fg: h) rezultāts, kad robeža ir 4 = (a, bc, de, fg: h) rezultāts, kad robeža ir 10 = (a, bc, de, fg, h)
Piezīme: split () metodi, kas nepieciešams parastai izteiksmei kā pirmo argumentu. Ja jums ir nepieciešams, lai izmantotu speciālās rakstzīmes, piemēram,: ,
|
, ^
, *
, +
utt, jums ir nepieciešams, lai izvairītos no šīs rakstzīmes. Piemēram, mums jāizmanto, \+
lai sadalītu +
.
3. piemērs: split () pie rakstzīmes +
// 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)); ) )
Rezultāts
rezultāts = (a, e, f)
Šeit, lai sadalītu virkni +
, mēs esam izmantojuši \+
. Tas ir tāpēc, ka +
ir īpašs raksturs (regulārajās izteiksmēs tam ir īpaša nozīme).