日前在使用split 分解字符串时,发现"."这个字符串分解不了,程序如下:
public static void main(String[] str){
String ip = "59.39.158.107";
String[] ipstr = ip.split("."); 免费查IP归属地
System.out.println(ipstr.length);
}
后来查看了String.split的源码,明白split是用正则来分解的,然而"."在正则是特殊字符,所以得用转义符来转义
String.split的源码如下:
public string[] split(string regex, int limit) {
return pattern.compile(regex).split(this, limit);
}
修改后的分解IP程序如下:
public static void main(String[] str){
String ip = "59.39.158.107";
String[] ipstr = ip.split(".");
System.out.println(ipstr.length);
}
可以发现加入后可以正确的分解字符串