字符串分割之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

  

posted @ 2021-11-15 10:37  伍壹贰  阅读(515)  评论(0)    收藏  举报