字符串分割之String.split(".")失效,特殊字符"."需要转义
比如有一个ipv4格式的IP地址10.10.10.123,需要讲他们没按符合"."进行分割,然后获取各自的值并打印,那么打印的值应该为:10 10 10 123。
代码如下:
@Test public void test() { String[] tmp = "10.10.10.123".split("."); log.info("start"); for (int i = 0; i < tmp.length; i++) { log.info(tmp[i]); } }
然而,并没有打印期望的值。最后发现,在String.split()方法中,一些切割符号需要转义,符号"."就需要:
@Test
public void test() {
String[] tmp = "10.10.10.123".split("\\.");
log.info("start");
for (int i = 0; i < tmp.length; i++) {
log.info(tmp[i]);
}
}
代码调试结果为:
10:31:43.978 [main] INFO com.cn.test.demo.testdemo.SpringBootVersionTest - start 10:31:43.978 [main] INFO com.cn.test.demo.testdemo.SpringBootVersionTest - 10 10:31:43.978 [main] INFO com.cn.test.demo.testdemo.SpringBootVersionTest - 10 10:31:43.979 [main] INFO com.cn.test.demo.testdemo.SpringBootVersionTest - 10 10:31:43.979 [main] INFO com.cn.test.demo.testdemo.SpringBootVersionTest - 123

浙公网安备 33010602011771号