前言

  • jdk 1.8

split函数

注意,split函数的参数是正则表达式。split函数的定义为:

/*** Splits this string around matches of the given <a* href="../util/regex/Pattern.html#sum">regular expression</a>.** <p> This method works as if by invoking the two-argument {@link* #split(String, int) split} method with the given expression and a limit* argument of zero.  Trailing empty strings are therefore not included in* the resulting array.** <p> The string {@code "boo:and:foo"}, for example, yields the following* results with these expressions:** <blockquote><table cellpadding=1 cellspacing=0 summary="Split examples showing regex and result">* <tr>*  <th>Regex</th>*  <th>Result</th>* </tr>* <tr><td align=center>:</td>*     <td>{@code { "boo", "and", "foo" }}</td></tr>* <tr><td align=center>o</td>*     <td>{@code { "b", "", ":and:f" }}</td></tr>* </table></blockquote>*** @param  regex*         the delimiting regular expression** @return  the array of strings computed by splitting this string*          around matches of the given regular expression** @throws  PatternSyntaxException*          if the regular expression's syntax is invalid** @see java.util.regex.Pattern** @since 1.4* @spec JSR-51*/
public String[] split(String regex) { ... }

特殊符号的处理

split函数的参数是正则表达式,则正则表达式的特殊符号作为分隔符时,就需要特殊处理。

比如,.在正则表达式中是通配符,匹配除换行符(\n、\r)之外的任何单个字符

对特殊符号的处理方法有两种:

  • 转义。比如,\.
  • 放到中括号里。比如,[.]

示例

String[] s1 = "a.b.c".split("\\.");
System.out.println(Arrays.asList(s1)); //[a, b, c]String[] s2 = "a.b.c".split("[.]");
System.out.println(Arrays.asList(s2)); //[a, b, c]

参考

https://www.runoob.com/regexp/regexp-metachar.html

Java String.split() 特殊字符处理相关推荐

  1. java string()函数_转载java String.split()函数的用法详解

    转载java String.split()函数的用法详解 如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!在java.lang包中有String.split()方法的原型是: p ...

  2. Java String split方法性能分析

    近期笔者分析一段在线代码的性能时,发现Java String类中split()方法的性能和网上一些帖子的描述并不相同,是以记录澄清. Java String split方法到底有没有使用正则表达式? ...

  3. Java String.split()用法小结

    2019独角兽企业重金招聘Python工程师标准>>> 在java.lang包中有String.split()方法,返回是一个数组 我在应用中用到一些,给大家总结一下,仅供大家参考: ...

  4. Java: String.split(....); 结果很意外

    String txt = "join|公共聊天室||"; String[] paras = txt.splite("\\|"); String t1 = par ...

  5. java String.split()部分分割符无法识别,需要进行转义

    之前使用String.split()方法进行字符串分割时,发现使用一些特殊的分隔符时,分割后的字符串数组有问题,经查是部分分隔符需要转义,特此记录 /*** 检测 分隔符 是否存在特殊字符* @par ...

  6. java String split 方法丢弃末尾的空白字符问题

    问题描述 在使用 split 方法时,末尾的空白字符会被丢弃,但是实际上这个行字符可能是一个文件的内容,没个字段内容是否为空都需要记录,此时 split的此无参数方法就不再适用了. 情景再现 Stri ...

  7. Java String split 使用详解、split 方法存在的一些坑

    String 方法的split 其实是很有学问的,他有很多的特殊情况.我们来梳理一下: 备注:limit 是 split(String regex, int limit ) 方法的第二个参数,&quo ...

  8. java string split的使用

    工作快半年了,每天都在为自己的将来担心,总有一种危机感,生怕某天被淘汰:更多的是,工作中发现了自己的种种不足,希望通过我的努力能弥补过来:下面用代码来阐述我对String类中split方法的理解:虽然 ...

  9. Java中split方法详细讲解

    1.split()方法介绍 语法: public String split(String regex) public String split(String regex, int limit) 参数: ...

最新文章

  1. 【制作镜像】BCEC制作镜像
  2. Android中三种常用解析XML的方式(DOM、SAX、PULL)简介及区别
  3. 从编译安装Keepalived 到 配置 负载均衡(LVS-DR)
  4. 使用JavaStcript对数组元素去重的方法
  5. 具有MicroProfile配置的可配置JAX-RS ExceptionMapper
  6. LeetCode 374. Guess Number Higher or Lower
  7. python 延时_理解Python多线程5:加锁解决问题,但又带来麻烦!
  8. Java面试之锁-可重入锁和递归锁
  9. 海龟交易法则04_像海龟一样思考
  10. linux命令行学习游戏,如何在Linux命令行中下载GOG游戏
  11. LM393 电压比较器及其典型电路介绍
  12. java 观察者模式类图_设计模式——观察者模式
  13. 华为内部硬件开发设计流程
  14. 犯了这15个错误,你可能会上征信“黑名单”
  15. excel vba两个单元格内容合并
  16. ASP.NET Core 运行原理解剖[2]-Hosting补充之配置介绍
  17. FPGA驱动VGA显示
  18. Arduino 水质检测仪(浊度、TDS、温度、电导率、吸光度、硬度)带18b20温度补偿。
  19. 斩获 offer 的 Java 面试宝典
  20. 作为一名成熟的云原生布道师,我是这么写作的

热门文章

  1. 《CCNP安全Secure 642-637认证考试指南》——第8章 配置与实施路由式数据面安全...
  2. [转]html中offsetTop、clientTop、scrollTop、offsetTop各属性介绍
  3. 10K入职linux运维岗位小伙伴感谢信及面试经历分享
  4. 解决linux下无线网卡被物理禁用问题
  5. IBATIS中关于iterate$与#的应用
  6. 一个***与一个电脑白痴的经典对白
  7. 在C#中使用Selenium WebDriver执行JavaScript
  8. 并发基础知识 — 线程安全性
  9. 解决VS2013调试ASP.NET中无法调试的问题:当前不会命中断点。在 XXXX.dll 中找到了 XXX.cs 的副本,但是当前源代码与 XXXX.dll 中内置的版本不同。...
  10. .NET对象克隆的深究(转)