String的split方法的坑

鄒小胖發表於2020-12-24

在java.lang包中有String.split()方法,返回是一個陣列------不管按照什麼拆,拆出來是一個陣列

String str = "1,2,3,4,5,6";

String[] strarr = str.split(",");

system.out.println(strarr)//["1","2","3","4","5","6"]

注:

1、如果用“.”作為分隔的話,必須是如下寫法,String.split("\."),這樣才能正確的分隔開,不能用String.split(".");

2、如果用“|”作為分隔的話,必須是如下寫法,String.split("\|"),這樣才能正確的分隔開,不能用String.split("|");

3、“.”和“|”都是轉義字元,必須得加"\" 看原始碼可知 “.$|()[{^?*+\” 都需要轉譯

// 按空格拆分

String str = "java cpp php c# objective-c";

String[] strArr = str.split("\\s");

System.out.println(Arrays.toString(strArr));//[java, cpp, php, c#, objective-c]

// 按+、-、=符號拆分String line = "100+200-150=150";

strArr = line.split("[\\+\\-=]");

 System.out.println(Arrays.toString(strArr));//[100, 200, 150, 150]

相關文章