繁体   English   中英

字符串没有使用string.split正确拆分

[英]String not splitting properly using string.split

我很尴尬地问这个问题,这是一个真正的新手问题,但它整个上午一直在踢我的屁股。 这里是:我正在尝试使用三个句点作为分隔符将IP地址拆分为四个单独的字符串。 这是我正在使用的代码:

     Toast.makeText(getBaseContext(),s,Toast.LENGTH_SHORT).show();
     String[] ip = s.split(".",4);
     String ip0ne = ip[0];
     String ipTwo = ip[1];
     String ipThree = ip[2];
     String ipFour = ip[3];

's'是包含ip地址'82 .163.99.82'的字符串,这是在toast中验证的问题是,ipOne,ipTwo和ipThree最终什么都没有,ipFour最终包含'163.99.82'第一个数字ip地址完全消失了。 请帮助!

String[] ip = s.split("\\.",4);

字符串参数被评估为正则表达式,因此我们必须转义点(在java中我们也必须转义转义字符 - 因此:双反斜杠)

split方法采用正则表达式 - 和. 在一个正则表达式匹配任何字符:(我个人认为,任何非正则表达式API都将一个正则表达式作为一个String而没有方法名称中的任何内容来表示,但是嘿......

可以"\\\\." 作为分割值 - 但我个人会使用Guava及其Splitter类型:

private static final Splitter DOT_SPLITTER = Splitter.on('.').limit(4);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM