`
文艺的程序猿
  • 浏览: 102439 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Java String.split()用法小结

    博客分类:
  • JAVA
阅读更多

在java.lang包中有String.split()方法,返回是一个数组

我在应用中用到一些,给大家总结一下,仅供大家参考:

1、如果用“.”作为分隔的话,必须是如下写法,String.split("\\."),这样才能正确的分隔开,不能用String.split(".");

2、如果用“|”作为分隔的话,必须是如下写法,String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");

“.”和“|”都是转义字符,必须得加"\\";

3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or");

使用String.split方法分隔字符串时,分隔符如果用到一些特殊字符,可能会得不到我们预期的结果。

我们看jdk doc中说明 

public String[] split(String regex)

Splits this string around matches of the given regular expression.

参数regex是一个 regular-expression的匹配模式而不是一个简单的String,他对一些特殊的字符可能会出现你预想不到的结果,比如测试下面的代码用竖线 | 分隔字符串,你将得不到预期的结果

 

String[] aa = "aaa|bbb|ccc".split("|");

    //String[] aa = "aaa|bbb|ccc".split("\\|"); 这样才能得到正确的结果

    for (int i = 0 ; i <aa.length ; i++ ) {

      System.out.println("--"+aa[i]); 

    }

 

 

用竖 * 分隔字符串运行将抛出java.util.regex.PatternSyntaxException异常,用加号 + 也是如此。

 

String[] aa = "aaa*bbb*ccc".split("*");

    //String[] aa = "aaa|bbb|ccc".split("\\*"); 这样才能得到正确的结果    

    for (int i = 0 ; i <aa.length ; i++ ) {

      System.out.println("--"+aa[i]); 

    }

 

 

显然, + * 不是有效的模式匹配规则表达式,用"\\*" "\\+"转义后即可得到正确的结果。

"|" 分隔串时虽然能够执行,但是却不是预期的目的,"\\|"转义后即可得到正确的结果。

 

还有如果想在串中使用"\"字符,则也需要转义.首先要表达"aaaa\bbbb"这个串就应该用"aaaa\\bbbb",如果要分隔就应该这样才能得到正确结果,

String[] aa = "aaa\\bbb\\bccc".split("\\\\");

 

分享到:
评论
1 楼 lujin608 2016-11-24  
,学习了

相关推荐

    Java中String.split()用法小结

    总之,`String.split()`方法是Java中进行字符串切割的重要工具,正确理解和使用正则表达式转义规则是关键。在编写代码时,一定要注意特殊字符的处理,确保它们被正确地解析为分隔符,而不是正则表达式的一部分。同时...

    java String类常用方法练习小结

    理解并熟练使用`String`类的方法对于Java开发者来说至关重要。通过实践,你可以更好地掌握字符串操作,从而编写出更加高效和优雅的代码。记得在处理字符串时考虑到其不可变性,并根据需要选择合适的方法来完成任务。

    JAVA中STRING的常用方法小结

    本文将对Java中String类的常用方法进行详细的总结,帮助开发者更好地理解和使用这些方法。 首先,创建和初始化一个String对象通常有两种方式。第一种是直接赋值,如`String b = "hello";`,这里创建了一个包含...

    Java和scala实现 Spark RDD转换成DataFrame的两种方法小结

    Java 和 Scala 实现 Spark RDD 转换成 DataFrame 的两种方法小结 在本文中,我们将讨论如何使用 Java 和 Scala 将 Spark RDD 转换成 DataFrame,並且介绍两种实现方法。 准备数据源 在项目下新建一个 student.txt...

    投票管理系统-java.doc

    3. **字符串分析器**:在处理用户输入的候选人名单时,可能需要使用String类的方法,如split(),将候选人名列表分割成单独的字符串。这使得系统能识别并处理每个候选人的信息。 4. **选择框(Checkbox)**:在投票...

    javascript cookie操作类的实现代码小结附使用方法

    第一种方法:cookie操作类,代码封装了,下面也有使用方法,大家可以参考下。 代码如下: String.prototype.Trim = function() { return this.replace(/^\s+/g,””).replace(/\s+$/g,””); } function JSCookie() {...

    Java高级面试题小结

    "Java高级面试题小结" 本文主要介绍了Java高级面试题,包括对部分名词的释义及代码解析,具有一定收藏价值,需要的朋友可以参考下。以下是对标题和描述中所说的知识点的详细解释: 一、可变参数 可变参数允许调用...

    Java常用字符串方法小结

    如果忽略大小写,可以使用`equalsIgnoreCase()`方法。 4. **字符串截取**:使用`substring()`方法可以从字符串中提取子串。例如,`my.substring(11, 19)`会返回"cai yu fei"。 5. **查找子串**:`indexOf()`方法...

    java读取csv文件内容示例代码

    Java 读取 CSV 文件内容示例代码 ...小结 Java 读取 CSV 文件内容是一种常见的数据处理操作,CsvUtil 类提供了读取 CSV 文件、获取行数、获取列数、获取指定行和获取指定列等功能,可以满足大多数的数据处理需求。

    Java实现获取客户端真实IP方法小结

    String[] ips = ip.split(","); for (int i = 0; i &lt; ips.length; i++) { if (!"unknown".equalsIgnoreCase(ips[i].trim())) { return ips[i].trim(); } } return ip; } ``` 这个改进的方法首先尝试获取`X-...

    Android与服务器端数据交互(基于SOAP协议整合android+webservice)_.docx

    #### 五、小结 通过上述步骤,我们可以实现在Android应用中调用基于SOAP协议的Web服务。这种方式不仅能够帮助开发者实现跨平台的远程服务调用,还能够在资源受限的移动设备上提供高效的数据交换能力。在实际应用...

    Java实验指导书(实验七).doc

    1. **字符串类**:掌握Java语言中字符串相关类(如`String`类)的使用方法。 2. **正则表达式**:理解正则表达式的原理及其在Java中的应用。 3. **数学运算类**:熟悉Java中`Math`类及`BigInteger`类的功能和用法。 ...

    Ext Js权威指南(.zip.001

    1.6 本章小结 / 33 .第2章 从“hello world”开始 / 34 2.1 获取ext js 4 / 34 2.2 配置使用ext js库 / 35 2.3 编写“hello world”程序 / 37 2.4 关于ext.onready / 38 2.5 关于ext.blank_image_url / 40 ...

    16 个有用的的Java工具类(小结)

    Java 工具类总结 Java 工具类是一组常用的公共方法,帮助开发者简化代码和提高开发效率。...这些工具类涵盖了 Java 编程中常见的 IO 操作、文件操作、字符串操作等多个方面,使用它们可以简化代码和提高开发效率。

    RED HAT LINUX 6大全

    1.5 小结 4 第2章 Red Hat系统的安装 5 2.1 准备,认真准备 5 2.2 安装Red Hat Linux 6 2.2.1 创建引导盘和辅助盘 6 2.2.2 不利用引导软盘进行安装 7 2.2.3 虚拟控制台 7 2.2.4 对话框 7 2.3 一步步地安装 7 2.3.1 ...

    从dubbo zookeeper注册地址提取出zookeeper地址的方法

    小结 ---- 在本文中,我们讨论了如何从 Dubbo 注册地址中提取出 Zookeeper 地址的方法。我们使用 Java 语言编写了一个简单的方法,用于处理 Dubbo 注册地址并提取出 Zookeeper 地址。这个方法可以在各种应用程序中...

Global site tag (gtag.js) - Google Analytics