split æ¹æ³
å°ä¸ä¸ªå符串åå²ä¸ºåå符串ï¼ç¶åå°ç»æä½ä¸ºå符串æ°ç»è¿åã
stringObj.split([separatorï¼[limit]])
stringObj
å¿
é项ãè¦è¢«å解ç String 对象ææåã该对象ä¸ä¼è¢« split æ¹æ³ä¿®æ¹ã
separator
å¯é项ãå符串æ æ£åè¡¨è¾¾å¼ å¯¹è±¡ï¼å®æ è¯äºåéå符串æ¶ä½¿ç¨çæ¯ä¸ä¸ªè¿æ¯å¤ä¸ªå符ãå¦æ忽
ç¥è¯¥é项ï¼è¿åå
å«æ´ä¸ªå符串çåä¸å
ç´ æ°ç»ã
limit
å¯é项ã该å¼ç¨æ¥éå¶è¿åæ°ç»ä¸çå
ç´ ä¸ªæ°ã
说æï¼
split æ¹æ³çç»ææ¯ä¸ä¸ªå符串æ°ç»ï¼å¨ stingObj ä¸æ¯ä¸ªåºç° separator çä½ç½®é½è¦è¿è¡å解
ãseparator ä¸ä½ä¸ºä»»ä½æ°ç»å
ç´ çé¨åè¿åã
举ä¾ï¼
public class SplitDemo {
public static String[] ss = new String[20];
public SplitDemo() {
String s = "The rain in Spain falls mainly in the plain.";
// å¨æ¯ä¸ªç©ºæ ¼å符å¤è¿è¡å解ã
ss = s.split(" ");
}
public static void main(String[] args) {
SplitDemo demo = new SplitDemo();
for (int i = 0; i < ss.length; i++)
System.out.println(ss[i]);
}
}
ç¨åºç»æï¼
The
rain
in
Spain
falls
mainly
in
the
plain.
public string[] split(string regex)
è¿éçåæ°çåç§°æ¯ regex ï¼ä¹å°±æ¯ regular expression ï¼æ£å表达å¼ï¼ãè¿ä¸ªåæ°å¹¶ä¸æ¯ä¸ä¸ªç®åçåå²ç¨çå符ï¼èæ¯ä¸ä¸ªæ£å表达å¼ï¼çäº split æ¹æ³çå®ç°ä»£ç å°±æ´åå®äºæ们çä¿¡å¿ï¼
public string[] split(string regex, int limit) {
return pattern.compile(regex).split(this, limit);
}
split çå®ç°ç´æ¥è°ç¨ç matcher ç±»ç split çæ¹æ³ã读è
å·²ç»ç¥éï¼â . âå¨æ£å表达å¼ä¸æç¹æ®çå«ä¹ï¼å æ¤æ们使ç¨çæ¶åå¿
é¡»è¿è¡è½¬ä¹ã
åªè¦å°
String[] names = value.split(".");
æ¹ä¸º
String[] names = value.split("//.");
å°±å¯ä»¥äºã
è¾åºç»æï¼
192
168
128
33
è¡¥å
说æï¼
public String[] split(String regex,int limit)æ ¹æ®å¹é
ç»å®çæ£å表达å¼æ¥æåæ¤å符串ã
æ¤æ¹æ³è¿åçæ°ç»å
å«æ¤å符串çæ¯ä¸ªåå符串ï¼è¿äºåå符串ç±å¦ä¸ä¸ªå¹é
ç»å®ç表达å¼çåå符串ç»æ¢æç±å符串ç»ææ¥ç»æ¢ãæ°ç»ä¸çåå符串æå®ä»¬å¨æ¤å符串ä¸ç顺åºæåãå¦æ表达å¼ä¸å¹é
è¾å
¥çä»»ä½é¨åï¼åç»ææ°ç»åªå
·æä¸ä¸ªå
ç´ ï¼å³æ¤å符串ã
limit åæ°æ§å¶æ¨¡å¼åºç¨ç次æ°ï¼å æ¤å½±åç»ææ°ç»çé¿åº¦ãå¦æ该éå¶ n å¤§äº 0ï¼å模å¼å°è¢«æå¤åºç¨ n - 1 次ï¼æ°ç»çé¿åº¦å°ä¸ä¼å¤§äº nï¼èä¸æ°ç»çæå项å°å
å«è¶
åºæåå¹é
çå®ç符çææè¾å
¥ãå¦æ n 为éæ£ï¼å模å¼å°è¢«åºç¨å°½å¯è½å¤ç次æ°ï¼èä¸æ°ç»å¯ä»¥æ¯ä»»æé¿åº¦ãå¦æ n 为é¶ï¼å模å¼å°è¢«åºç¨å°½å¯è½å¤ç次æ°ï¼æ°ç»å¯æä»»ä½é¿åº¦ï¼å¹¶ä¸ç»å°¾ç©ºå符串å°è¢«ä¸¢å¼ã
ä¾å¦ï¼å符串 "boo:and:foo" 使ç¨è¿äºåæ°å¯çæä¸åç»æï¼
Regex Limit ç»æ
: 2 { "boo", "and:foo" }
: 5 { "boo", "and", "foo" }
: -2 { "boo", "and", "foo" }
o 5 { "b", "", ":and:f", "", "" }
o -2 { "b", "", ":and:f", "", "" }
o 0 { "b", "", ":and:f" }
è¿ç§å½¢å¼çæ¹æ³è°ç¨ str.split(regex, n) 产çä¸ä»¥ä¸è¡¨è¾¾å¼å®å
¨ç¸åçç»æï¼
Pattern.compile(regex).split(str, n)
åæ°ï¼
regex - å®çæ£å表达å¼
limit - ç»æéå¼ï¼å¦ä¸æè¿°
è¿åï¼
å符串æ°ç»ï¼æ ¹æ®ç»å®æ£å表达å¼çå¹é
æ¥æåæ¤å符串ï¼ä»èçææ¤æ°ç»
æåºï¼
PatternSyntaxException - å¦ææ£å表达å¼çè¯æ³æ æ
ä»ä»¥ä¸çæ¬å¼å§ï¼
1.4
public String[] split(String regex)æ ¹æ®ç»å®çæ£å表达å¼çå¹é
æ¥æåæ¤å符串ã
该æ¹æ³çä½ç¨å°±åæ¯ä½¿ç¨ç»å®ç表达å¼åéå¶åæ° 0 æ¥è°ç¨ä¸¤åæ° split æ¹æ³ãå æ¤ï¼ç»ææ°ç»ä¸ä¸å
æ¬ç»å°¾ç©ºå符串ã
ä¾å¦ï¼å符串 "boo:and:foo" 产ç带æä¸é¢è¿äºè¡¨è¾¾å¼çç»æï¼
Regex ç»æ
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
åæ°ï¼
regex - å®çæ£å表达å¼
è¿åï¼
å符串æ°ç»ï¼æ ¹æ®ç»å®æ£å表达å¼çå¹é
æ¥æåæ¤å符串ï¼ä»èçææ¤æ°ç»ã
æåºï¼
PatternSyntaxException - å¦ææ£å表达å¼çè¯æ³æ æ
温馨提示:答案为网友推荐,仅供参考