`
yongguang423
  • 浏览: 110573 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

JAVA分割字符串注意问题 .

 
阅读更多
String.split方法

使用String.split方法时要注意的问题
在使用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 System.out.println("--"+aa);
}
用竖 * 分隔字符串运行将抛出java.util.regex.PatternSyntaxException异常,用加号 + 也是如此。
String[] aa = "aaa*bbb*ccc".split("*");
//String[] aa = "aaa|bbb|ccc".split("//*"); 这样才能得到正确的结果
for (int i = 0 ; i System.out.println("--"+aa);
}
显然,+ * 不是有效的模式匹配规则表达式,用"//*" "//+"转义后即可得到正确的结果。
"|" 分隔串时虽然能够执行,但是却不是预期的目的,"//|"转义后即可得到正确的结果。
还有如果想在串中使用"/"字符,则也需要转义.首先要表达"aaaa/bbbb"这个串就应该用"aaaa//bbbb",如果要分隔就应该这样才能得到正确结果:
String[] aa = "aaa//bbb//bccc".split("////");

注意当用"."分隔的时候, 要用"[.]" 进行分隔!
分享到:
评论

相关推荐

    java 分割字符串

    在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某一部分。这通常通过使用`split()`方法来实现,该方法是`String`类的一个实例方法。让...

    Java字符串分隔方法split实践

    当调用`split(regex)`时,Java会找到所有与`regex`匹配的子串,并在它们之间分割原始字符串,返回一个包含子字符串的数组。 让我们通过一个简单的例子来理解`split()`的使用: ```java String str = "Hello,World!...

    java对字符串相关操作.doc

    - **提取第一个单词**:这里使用了`split()`方法,`str = s.split(" ")`将字符串按空格分割成单词数组,`str[0]`即为第一个单词。 2. **矩阵类(Matrix)**: - **构造方法**:类`Matrix`包含三个构造器,分别用于...

    java中如何截取字符串.txt

    根据提供的文件信息,本文将详细解释Java中截取字符串的各种方法及其使用场景,并结合部分示例代码进行说明。 ### Java中截取字符串的方法 在Java编程语言中,字符串的处理是一项非常重要的技能,特别是在开发中...

    java.util.Date与java.sql.Date互转及字符串转换为日期时间格式.docx

    另一种方法是使用`StringTokenizer`来分割字符串,然后手动构建日期对象。 ```java String strDate = "2002-08-09"; StringTokenizer st = new StringTokenizer(strDate, "-"); java.sql.Date date = new java.sql....

    java 分解字符串

    4. 分割字符串的注意事项 - `split()`方法返回的是一个字符串数组,数组的长度等于字符串被分割的次数。 - 如果正则表达式没有匹配到任何内容,`split()`方法将返回原始字符串本身,数组长度为1。 - 分割后的结果不...

    0字符串知识点.pdf

    - `split(String regex)`方法用于按照指定的分隔符将字符串分割成字符串数组,如`"abdeft".split("\\s+")`按照一个或多个空格分割字符串。 4. 字符串比较: - `==`运算符用于比较两个字符串对象的引用是否指向同...

    分割字符串函数 分割字符串函数

    在编程领域,分割字符串函数是处理文本数据时非常常用的一种工具。它允许我们将一个长字符串按照特定的分隔符拆分成多个子字符串,方便我们进行后续的分析、处理或存储。这里,我们将深入探讨字符串分割函数的相关...

    work2_分割字符串_字符串处理_

    首先,我们来关注“分割字符串”这一主题。字符串分割是将一个长字符串依据特定的分隔符切割成多个子字符串的操作。在不同的编程语言中,这个过程有不同的实现方式。 在C语言中,`strtok()` 函数是用于分割字符串的...

    字符串分割

    在许多编程语言中,如Python、Java、JavaScript等,都提供了内置的字符串分割功能。这个功能允许我们将一个长字符串依据特定的分隔符切割成多个子字符串,从而方便我们进行数据解析、处理和分析。 在Python中,`...

    Java字符串类型转换

    6. **字符串分割**:`split(String regex)` 方法可以按照正则表达式分割字符串,返回一个字符串数组。 #### 四、字符串的格式化 在实际应用中,我们可能还需要对字符串进行格式化处理,如日期格式化、数值格式化等...

    Java字符串查找和提取异常处理

    ### Java字符串查找和提取异常处理 #### 概述 本文将详细介绍如何在Java中实现字符串查找与提取功能,并在此过程中妥善处理可能出现的各种异常情况。通过分析提供的代码示例`IndexOfAndCharAt.java`,我们将了解到...

    java数组与字符串用法小结

    `StringTokenizer` 是Java中用于解析字符串的一个实用类,它可以按照指定的分隔符将字符串分割成多个部分。下面是一个简单的示例: ```java import java.util.StringTokenizer; public class Test { public ...

    mybatis Mapper.xml中传参多选 字符串形式逗号分隔 AND中拼接OR.rar

    例如,如果用户选择的标签以逗号分隔的字符串"tag1,tag2,tag3"传入,我们可以在Java代码中将其分割并存入List。 接下来,我们将焦点转到Mapper.xml文件。在SQL语句中,我们可以使用`<foreach>`标签来遍历集合中的...

    分割字符串

    ### 分割字符串知识点详解 #### 一、概述 在日常的软件开发过程中,字符串操作是一项非常基础且重要的技能。无论是处理文本数据还是构建用户界面,都离不开对字符串的灵活运用。其中,“分割字符串”作为字符串...

    字符串string.zip

    在本压缩包“字符串string.zip”中,主要包含的是与Java编程语言中字符串相关的教学资料,特别是针对S1课程的学员。这个课程旨在帮助学生深入理解程序逻辑,并且重点聚焦在Java中的字符串处理。文件“Chapter15”...

    java常用字符串方法网络收集txt版

    7. **分割字符串**:`split()`方法根据给定的分隔符将字符串分割成多个子字符串,返回一个字符串数组。 8. **连接字符串**:`concat()`方法可以将两个字符串连接在一起,或者使用`+`运算符。 9. **去除空白字符**...

    字符串122000.txt

    ### Java字符串操作方法 #### 1. 字符串查找方法 - **`indexOf(String str)`**:此方法用于查找指定子字符串在当前字符串中首次出现的位置。如果找到,则返回该位置的索引值(从0开始);如果没有找到,则返回-1。 ...

    java中截取带汉字的字符串

    在Java编程语言中,处理包含中文字符的字符串时,经常遇到的一个问题是如何正确地截取这些字符串。如果直接按照字节(byte)来进行分割,很容易导致中文字符被截断一半,从而形成乱码。这是因为一个中文字符通常占用多...

Global site tag (gtag.js) - Google Analytics