当使用竖线分割一个字符串的时候必须写成\|这样,这样才会被正则表达式识别。如果直接写成|,那么解析后分割后的结果就是会在
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]