一、split是什么?

在Java中,split()方法用于分隔字符串,可以根据匹配给定的正则表达式来拆分字符串。split()方法可以将一个字符串分割为子字符串,然后将结果作为字符串数组返回;语法如下,其中参数regex指定正则表达式分隔符,limit指定分割的份数。分隔符可以是任意字符、符号、数字、字符串等。

stringInfo.split([regex,[limit]])

二、特殊字符处理

1.案例

private String data = "6&三-1号柜^7&三-2号柜^8&客服中心";
字符串转成 List数组 数组中包括 id 跟名字

这里就涉及到了特殊字符分割,如果按照传统分割 data.split("^"); 输出结果还是 字符串本身,所以在涉及到特殊字符分割的时候要前面要加上转义符

String data = "6&三-1号柜^7&三-2号柜^8&客服中心";
List<Pair<String, String>> list = new ArrayList<>();
String[] elements = data.split("\\^");
for (String element : elements) {String[] parts = element.split("&");String id = parts[0];String name = parts[1];list.add(new Pair<>(id, name));
}

还有一种涉及到多符号分割,这种情况下不到要加上转义符 还要借助分割符处理、

String address="北京^北京市@海淀区#四道街";
String address = "北京^北京市@海淀区#四道街";
String[]splitAddress=address.split("\\^|@|#");
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);

总结

split即正则表达式。特殊符号有  |   +  *  ^   $   /   |   [   ]  (   )  -   .   \ 等,因为它们是正则表达式中的一部分, 所以如果想用该字符本身,必须使用转义符即\\加以转义才能表示它本身

Java split()方法中的特殊符号相关推荐

  1. Java split方法详细讲解

    今天是圣诞节,我是中国人,无视圣诞节. 文章可能有点长,看下来必定有所收获. 没有学过正则表达式的去b站看,一个半小时应该可以看完,要看请点这里 这是必备的前置技能,不懂得话没法真正明白split用法 ...

  2. java split方法注意事项

    最近分析数据时,需要将数据分割组合,再分割,清洗后获得需要的数据.分割数据时,会使用到split方法,分割后有时会遇到问题.例如,是否以分割 符结尾时,分割出来的字符数组长度是不一样的. 一 , ja ...

  3. java split()方法_Java 性能优化的 50 个细节(珍藏版)

    作 者:Java杂记 来 源:yq.aliyun.com/articles/662001 在Java程序中,性能问题的大部分原因并不在于Java语言,而是程序本身.养成良好的编码习惯非常重要,能够显著 ...

  4. java split()方法_Java编程性能优化一些事儿

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 每天凌晨00点00分, 第一时间与你相约 每日英文 Smile and stop complaining about the t ...

  5. java中精确地小数_在Java等于方法中进行精确比较

    java中精确地小数 多年来,我一直在处理旧版Java代码,因此遇到了微妙的逻辑和性能问题,这些问题可以追溯到不正确覆盖的Object.equals(Object)方法. 尽管"等于&quo ...

  6. 在Java等于方法中进行精确比较

    多年来,我一直在处理旧版Java代码,因此遇到了微妙的逻辑和性能问题,这些问题可以追溯到不正确覆盖的Object.equals(Object)方法. 尽管"等于"方法背后的概念看似 ...

  7. 【Java】方法中的参数传递机制的具体体现

    Java方法中的参数传递机制的具体体现 具体来说是两种:值传递和址传递 以swap(Object obj1,Object obj2)方法为例: 1:如果传递进去的是基本数据类型参数得值,那么再调用sw ...

  8. java 在方法中抛出异常_Java异常的抛出

    在Java中,当定义的方法可能产生异常时,程序员必须抛出可能的异常. 抛出异常的两种方式,一是在方法内部用throw语句,二是在方法定义时用throws关键字 1.throw语句 在Java中,thr ...

  9. Java static方法中为什么只能调用静态方法?

    import java.io.*; import java.util.*;public class Main{public static void main(String args[]) throws ...

最新文章

  1. linux下打印机共享及监控
  2. 【django轻量级框架】HTML上传文件拦截到本地
  3. Windows下调试PostGreSQL源码第一步 - 下载和编译源码、构造VS工程
  4. python 对象序列化 pickling_[Python]对dat文件的操作:序列化对象
  5. 保护Eclipse RCP应用的商业Java编译器
  6. python通过链接下载文件-如何使用Python通过HTTP下载文件?
  7. 查看apache版本_Apache Pulsar 2.6.1 版本正式发布:2.6.0 加强版,新增 OAuth2 支持
  8. 微软公布Netgear 固件严重漏洞详情,可盗取用户身份并攻陷系统
  9. regsvr32.exe是什么东西
  10. 在Ubuntu中安装以theano作为backend的keras
  11. Div高度自适应内容高度
  12. ADSL常见问题 经典故障
  13. 算法面试准备建议|面试官角度
  14. CentOS 识别NTFS格式U盘
  15. 怎么在地图上标注自己的店铺
  16. python分类器分5类_Python机器学习之K近邻分类器
  17. 我的软考之路(四)——数据结构与算法(2)之树与二叉树
  18. CNN基础网络(一)
  19. Vivado 2017.4版本下载
  20. 手用计算机电池,二手电脑器材中的电池问题

热门文章

  1. Nancy Web框架
  2. Josephus(约瑟夫斯)问题
  3. [安卓破解]正点工具箱,去除推荐软件和正点之星
  4. 【Linux】第三部分 Linux文件系统目录结构
  5. 丰田到底是做什么的? / 白益民
  6. 利用欧拉四面体公式求任意三棱锥的体积
  7. 侠诺QVM-108高清视频、图片无线切换系统功能介绍
  8. matlab没有定义标量,SQL创建了标量函数但显示不存在,如何解决
  9. 软阈值(soft-thresholding)函数
  10. 2022年分立器件行业市场细分产品发展规模前景预测及投资价值可行性评估预测