Java中String的split切割字符串方法实例及扩展

 更新时间:2022年06月21日 10:08:30   作者:KJ.JK  
最近在项目中遇到一个小问题,一个字符串分割成一个数组,下面这篇文章主要给大家介绍了关于Java中String的split切割字符串方法的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

一、public String[] split(String regex)

public String[] split(String regex):

根据传入的字符串参数,作为规则,切割当前字符串

String a="198,168,10,1";
String [] arr=a.split(",");

for (int i = 0; i < arr.length; i++) {
    System.out.println(arr[i]);
}

二、public String[] split(String regex, int limit)

public String[] split(String regex, int limit):

根据传入的字符串参数和限制长度,作为规则,切割当前字符串(就是把字符串分成几段)

String b="2022-04-19";
String[] b1=b.split("-",2);   //分成两段
for (int i = 0; i < b1.length; i++) {
    System.out.println(b1[i]);
}

三、扩展

问题1:当切割到正则表达式符号的时候会切割失败

String a1="198.198.156";
String [] arr1=a1.split(".");

//当用正则表达式.切割的时候会出现什么都没有的情况,这是因为参数是正则表达式,而.在正则表达式中表任意字符,所以切割的时候会都切了
for (int i = 0; i < arr1.length; i++) {
    System.out.println(arr1[i]);
}

解决方法:使用转义字符 ‘\’ 就可以解决

String a1="198.198.156";
String [] arr2=a1.split("\\.");
for (int i = 0; i < arr2.length; i++) {
    System.out.println(arr2[i]);
}

问题2:当切割多个字符的时候会切割失败

String   s="198.19@19";
String [] sarr=s.split("\\.@");
for (int i = 0; i < sarr.length; i++) {
    System.out.println(sarr[i]);     //198.19@19
}

解决方法:当需要多个字符切割的时候要用到 | 这个分开

String   s2="198.19@19";
String [] s2arr=s2.split("\\.|@");
for (int i = 0; i < s2arr.length; i++) {
     System.out.println(s2arr[i]);
}

总结

1.split返回是一个字符串数组接收

2.为了防止切割的时候会因为正则表达式出现空白的情况,
以后所有切割都用\\为开头就行
             
3. 多个符号切割时记得用|分开

到此这篇关于Java中String的split切割字符串方法的文章就介绍到这了,更多相关Java String split切割字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • springboot的war和jar包的使用详解

    springboot的war和jar包的使用详解

    这篇文章主要介绍了springboot的war和jar包的使用详解,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-11-11
  • mybatis中关于in的使用方法及说明

    mybatis中关于in的使用方法及说明

    这篇文章主要介绍了mybatis中关于in的使用方法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • SpringBoot中各种Controller的写法

    SpringBoot中各种Controller的写法

    这篇文章主要介绍了SpringBoot中各种Controller的写法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Java如何根据实体指定字段值对其List进行排序详解

    Java如何根据实体指定字段值对其List进行排序详解

    在Java项目中可能会遇到给出一些条件,将List元素按照给定条件进行排序的情况,这篇文章主要给大家介绍了关于Java如何根据实体指定字段值对其List进行排序的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • java分布式面试降级组件Hystrix的功能特性

    java分布式面试降级组件Hystrix的功能特性

    这篇文章主要为大家介绍了java分布式面试关于降级组件Hystrix的功能特性回答,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-03-03
  • Maven方式构建SpringBoot项目的实现步骤(图文)

    Maven方式构建SpringBoot项目的实现步骤(图文)

    Maven是一个强大的项目管理工具,可以帮助您轻松地构建和管理Spring Boot应用程序,本文主要介绍了Maven方式构建SpringBoot项目的实现步骤,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 解决@JsonInclude(JsonInclude.Include.NON_NULL)不起作用问题

    解决@JsonInclude(JsonInclude.Include.NON_NULL)不起作用问题

    这篇文章主要介绍了解决@JsonInclude(JsonInclude.Include.NON_NULL)不起作用问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • SpringCloud客户端报错:- was unable to send heartbeat!的解决

    SpringCloud客户端报错:- was unable to send&nb

    这篇文章主要介绍了SpringCloud客户端报错:- was unable to send heartbeat!的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • SpringBoot获取不到用户真实IP的解决方法

    SpringBoot获取不到用户真实IP的解决方法

    最近遇到个问题,项目部署后发现服务端无法获取到客户端真实的IP地址,本文就来介绍一下这个问题的解决方法,感兴趣的可以了解一下
    2023-08-08
  • Java实现线程同步方法及原理详解

    Java实现线程同步方法及原理详解

    这篇文章主要介绍了Java实现线程同步方法及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06

最新评论