當使用豎線分割乙個字串的時候必須寫成\|這樣,這樣才會被正規表示式識別。如果直接寫成|,那麼解析後分割後的結果就是會在
string value="內蒙古包鋼醫院,包頭賓館(鋼鐵大街店)(40.651957,109.824734|40.658006,109.835388)";
value=value.substring(value.lastindexof("(")+1, value.length()-2);
system.out.println(value);
string latlon = value.split("\\|",2);
用debug方式檢視latlon的值:
這個是想要的結果
[40.651957,109.824734, 40.658006,109.83538]
這個是不使用正規表示式的結果,多了乙個逗號
value.split("|",2);
[, 40.651957,109.824734|40.658006,109.83538]
這個是使用正規表示式和分割成多少塊限制的結果
value.split("|");
[, 4, 0, ., 6, 5, 1, 9, 5, 7, ,, 1, 0, 9, ., 8, 2, 4, 7, 3, 4, |, 4, 0, ., 6, 5, 8, 0, 0, 6, ,, 1, 0, 9, ., 8, 3, 5, 3, 8] java split 方法邊界問題
test public void testsplit 當split方法分割字串後最後乙個元素為 空字串時 會自動捨去.需要在split中新增引數 1,string values line.split 1 imit 引數控制應用模式的次數,從而影響結果陣列的長度 如果限制 n 大於零,那麼模式至多應用...
Java split 方法實現切割字串
補充一下知識點 1 string的split 方法中傳的引數支援正規表示式 2 split 方法的返回的結果是string型陣列 3 關於正規表示式一切特殊例子 字元 都得加上轉義字元,前面加上 如果是 那麼就得寫成 如果乙個字串中有多個分隔符,可以用 作為連字元。正則表達是 s表示匹配任何空白符,...
java split 方法的一點小問題
用split 將字串分割成陣列,陣列長度問題 string a string b a.split b.length為 1 string a c string b a.split b.length為 1 string a c,string b a.split b.length為 1 string a ...