Java中使用split分解IP地址
日前在使用split分解字符串时,发现。这个字符串分解不了,程序如下:
publicstaticvoidmain(String〔〕str){
Stringip59。39。158。107;
String〔〕ipstrip。split(。);
免费查IP归属地https:www。ipdatacloud。com?utmsourceLJutmkeyword?1086
System。out。println(ipstr。length);
}
后来查看了String。split的源码,明白split是用正则来分解的,然而。在正则是特殊字符,所以得用转义符来转义
String。split的源码如下:
publicstring〔〕split(stringregex,intlimit){
returnpattern。compile(regex)。split(this,limit);
}
修改后的分解IP程序如下:
publicstaticvoidmain(String〔〕str){
Stringip59。39。158。107;
String〔〕ipstrip。split(。);
System。out。println(ipstr。length);
}
可以发现加入后可以正确的分解字符串