`
liweizlw
  • 浏览: 24706 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

java中split要注意的问题

阅读更多
在JAVA中, 在使用String.split方法分隔字符串时,但要注意有些字符不能直接用的,分隔符如果用到一些特殊字符,比如 "| " ,"*",等否则会出现问题,以前刚用时就因为这个问题而看了半天的代码。
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("\\\\");
本文转自福州IT信息网(http://www.fzic.net),详细出处参考:http://www.fzic.net/SrcShow.asp?Src_ID=738

分享到:
评论
3 楼 maoyu.love 2011-01-27  
好东西,详细
2 楼 zhangzi 2010-10-30  
学习了,谢谢
1 楼 lovinchan 2008-08-04  
太犀利啦      正好对我有用   ````哈哈 谢啦

相关推荐

    Java中Split的用法及注意

    Java 中 Split 的用法及注意 Java 中的 Split 方法是通过正则表达式来拆分字符串的,它可以将一个字符串分割为子字符串,然后将结果作为字符串数组返回。该方法的语法为 `stringObj.split(regex, [limit])`,其中 `...

    JAVA_split_用法

    在Java编程语言中,`String`类提供了多个实用的方法来处理字符串,其中`split()`方法是用于将一个字符串分割成字符串数组的一种常见方式。此方法利用正则表达式(Regular Expression)作为分隔符来分割字符串,并...

    Java字符串分隔方法split实践

    `split()`方法位于`java.lang.String`类中,它的基本语法如下: ```java public String[] split(String regex) ``` 这里的`regex`参数是一个正则表达式,用于定义分隔字符串的规则。正则表达式是一种强大的文本...

    java的String[] split 示例

    在Java编程语言中,`String`类提供了许多用于操作字符串的方法,其中之一便是`split`方法。这个方法在处理文本数据时极为有用,特别是在需要根据特定的分隔符将字符串分割成多个子串的情况下。下面,我们将深入探讨`...

    浅析Java中Split函数的用法技巧

    Java中的`String.split()`方法是处理字符串的强大工具,它能够根据指定的分隔符将一个字符串分割成多个子字符串,并将这些子字符串存储在一个数组中。这个方法在处理文本数据时非常常见,尤其是在解析CSV格式的数据...

    java正则表达式匹配全角空格

    本文将详细介绍如何使用Java中的`split()`方法,并结合正则表达式来处理全角空格和半角空格的问题。 #### 一、背景介绍 在处理文本数据时,经常会遇到不同类型的空格字符。除了最常见的半角空格(ASCII码为32)...

    java的split方法使用示例

    Java中的`split()`方法是String类的一个非常重要的成员函数,它用于将字符串按照指定的分隔符进行切割,返回一个字符串数组。这个方法在处理文本数据时尤其有用,例如解析CSV格式的数据、处理用户输入或者从日志文件...

    Java的split方法使用详解

    在上述示例中,我们看到`split`方法在处理连续的分隔符时可能会产生问题。例如,`str1`、`str2`和`str3`分别包含不同数量的连续逗号。当使用默认的`split(",")`时,连续的逗号被视为一个分隔符,导致在`str2`和`str3...

    PL/SQL实现JAVA中的split()方法的例子

    在Java编程语言中,`split()`方法是String类的一个重要成员,它允许开发者根据指定的分隔符将字符串拆分为一个字符串数组。然而,在Oracle的PL/SQL环境中,并没有直接对应的函数来完成相同的功能。因此,当需要在PL/...

    Java使用split截取字符串过程解析

    在Java编程语言中,`split()` 是一个非常实用的方法,用于根据给定的正则表达式将字符串分割成多个子字符串。这个方法存在于 `java.lang.String` 类中,它的主要功能是将一个字符串分解成一个字符串数组,其中每个...

    java split用法详解及实例代码

    Java中的`split()`方法是String类的一个非常重要的成员函数,用于根据给定的正则表达式将一个字符串分割成多个子字符串,并返回一个字符串数组。这个方法在处理文本数据、解析配置文件或从复杂的字符串中提取信息时...

    java中截取带汉字的字符串

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

    oracle_split_函数_返回数组

    在Oracle数据库中,由于内置函数不直接...需要注意的是,由于PL/SQL语言的限制,这些方法可能不如Java或其他支持内置字符串处理函数的语言那么直接和高效,但在Oracle环境中,它们提供了一种解决此类问题的有效途径。

    Java正则表达式之split()方法实例详解

    Java正则表达式之split()方法实例详解 Java正则表达式之split()方法是一种常用的字符串拆分方法,它可以将一个字符串根据给定的正则表达式分割成多个子字符串。下面将对split()方法进行详细的分析和讲解。 方法...

    Java中正则表达式split()特殊符号使用详解

    Java中的split()方法是String类中的一个方法,该方法使用正则表达式来将字符串分割成多个子字符串。然而,在使用split()方法时,需要注意特殊符号的使用,否则可能会导致错误的结果。本文将详细介绍Java中正则表达式...

    Java中String.split()用法小结

    Java中的`String.split()`方法是用于将一个字符串按照指定的分隔符进行切割,返回一个字符串数组。这个方法是基于正则表达式的,因此在处理某些特殊字符时需要注意字符的转义。 1. **基本用法** `String.split()`...

    java socket 用户真实IP测试

    在描述中提到的博客文章,很可能是详细介绍了这个问题的解决方案。通常,当用户通过Nginx访问服务时,Nginx会作为客户端与服务器建立Socket连接,这时服务器接收到的Socket连接请求的源IP将是Nginx的IP,而不是用户...

    java 分解字符串

    在Java中,我们主要使用`String`类提供的`split()`方法来实现这一功能。下面我们将深入探讨如何在Java中分解字符串以及其相关知识点。 1. `split()`方法 `split()`方法是`String`类的一个实例方法,它接受一个正则...

    斯坦福的句法分析器及在java中调用的源代码

    对于汉语模型的加载,需要注意的是,斯坦福句法分析器提供了专门针对汉语的模型文件,如`stanford-chinese-corenlp-&lt;version&gt;.jar`,这个文件应与`stanford-parser.jar`一起添加到类路径中。同时,配置`Properties`...

    String.split()方法使用总结

    在Java编程语言中,`String.split()`方法是一个非常实用且强大的工具,用于将字符串分割成字符串数组,基于正则表达式或指定的分隔符。这个方法为处理文本数据提供了极大的灵活性,尤其在解析CSV文件、配置文件或者...

Global site tag (gtag.js) - Google Analytics