Java使用split分割无效获取不到预期效果的解决办法

 更新时间:2023年08月02日 09:31:51   作者:Hi梅  
这篇文章主要给大家介绍了关于Java使用split分割无效获取不到预期效果的解决办法,java的String类中有个split方法,这个是我们经常使用到的,需要的朋友可以参考下

问题:

通过String字符串中split方法分割字符串得到数组信息获取不到的问题。

情景复现:

代码比较简单写个main方法运行后就可以看到效果。

    public static void main(String[] args) {
        String name="赵云.韩信.李白.诸葛亮";
        String[] split = name.split(".");
        System.out.println("分割后数据量:"+split.length);
    }

输出结果:

解决方式

      查看该方法的源码可以发现,方法参数是正则表达式,匹配符合此字符串进行拆分成数组,并且源码也说明不能以单个字符传递以下".$|()[{^?*+\\"内容

翻译:如果正则表达式是一个  

 (1)单字符字符串,且该字符不是正则表达式的元字符之一".$|()[{^?*+\\"   

(2)双字符字符串,第一个字符是反斜杠,第二个不是ascii数字ascii字母

只要这2个条件不满足那么就会走正则模式。

那就意味着我今天使用的是".$|()[{^?*+\\"其中的一个单字符去进行匹配也没法得到我需要预期的效果。

我们简单的验证下使用$

测试效果:

运行效果:

正则字符

转义

答案已经在表格里面了要使用正则的字符需要转义

//代码中2个反斜杠等于一个反斜杠
"\\" 对于 "\"

回到正题那么"."该怎么获取呢?双反斜杠就ok

总结

到此这篇关于Java使用split分割无效获取不到预期效果的解决办法的文章就介绍到这了,更多相关Java使用split分割无效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中的接口及其应用场景解读

    Java中的接口及其应用场景解读

    这篇文章主要介绍了Java中的接口及其应用场景解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Java中类变量和类方法的基本使用

    Java中类变量和类方法的基本使用

    这篇文章主要介绍了Java中类变量和类方法的基本使用,类变量也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类的对象访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量,需要的朋友可以参考下
    2023-07-07
  • Spring中的事件监听器使用学习记录

    Spring中的事件监听器使用学习记录

    Spring框架中的事件监听机制是一种设计模式,它允许你定义和触发事件,同时允许其他组件监听这些事件并在事件发生时作出响应,这篇文章主要介绍了Spring中的事件监听器使用学习,需要的朋友可以参考下
    2024-07-07
  • 详解Spring MVC3返回JSON数据中文乱码问题解决

    详解Spring MVC3返回JSON数据中文乱码问题解决

    本篇文章主要介绍了Spring MVC3返回JSON数据中文乱码问题解决,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Java Mybatis框架由浅入深全解析下篇

    Java Mybatis框架由浅入深全解析下篇

    MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码,本文将作为最终篇为大家介绍MyBatis的使用
    2022-07-07
  • Spring Boot整合Elasticsearch实现全文搜索引擎案例解析

    Spring Boot整合Elasticsearch实现全文搜索引擎案例解析

    ElasticSearch作为基于Lucene的搜索服务器,既可以作为一个独立的服务部署,也可以签入Web应用中。SpringBoot作为Spring家族的全新框架,使得使用SpringBoot开发Spring应用变得非常简单,在本案例中我们给大家介绍Spring Boot整合Elasticsearch实现全文搜索引擎
    2017-11-11
  • 使用springboot不自动初始化数据库连接池

    使用springboot不自动初始化数据库连接池

    这篇文章主要介绍了使用springboot不自动初始化数据库连接池,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • 基于Java Socket实现一个简易在线聊天功能(一)

    基于Java Socket实现一个简易在线聊天功能(一)

    这篇文章主要给大家介绍基于Java Socket实现一个简易在线聊天功能(一),分为客户端和服务端两段代码,非常具有参考价值,感兴趣的朋友一起学习吧
    2016-05-05
  • JDBC+GUI实现简单学生管理系统

    JDBC+GUI实现简单学生管理系统

    这篇文章主要为大家详细介绍了JDBC+GUI实现简单学生管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • SpringBoot2零基础到精通之数据库专项精讲

    SpringBoot2零基础到精通之数据库专项精讲

    SpringBoot是一种整合Spring技术栈的方式(或者说是框架),同时也是简化Spring的一种快速开发的脚手架,本篇我们来学习如何连接数据库进行操作
    2022-03-03

最新评论