读书人

关于string.split有关问题知道的进啊

发布时间: 2011-12-24 23:03:24 作者: rapoo

关于string.split问题,知道的进啊!

Java code
public class Test{    public static void main(String[]args){        String sql="ab cde  fghi  jklmn   opq";        String[]ob=sql.split(" ");        for(String t:ob)            System.out.println(t);    }}

结果为:
ab
cde

fjhi

jklmn


opq
而我想要的结果是:
ab
cde
fjhi
jklmn
opq


[解决办法]

[解决办法]
ab cde fghi jklmn opq

你字符串 字母和字母之间的空格数量不一样 才导致的

String[]ob=sql.split(" ");
这样写 是以一个空格的大小为中间量分解数组

你吧字符串之间的空格数都控制在一个上就 出现你要的结果了

ab cde fghi jklmn opq 这样的字符串
[解决办法]
Java code
 String sql="ab cde  fghi  jklmn   opq";         sql = sql.replaceAll("\\s+", " ");            String[]ob=sql.split(" ");            for(String t:ob)                System.out.println(t);
[解决办法]
Java code
public class Test{    public static void main(String[]args){        String sql="ab cde  fghi  jklmn   opq";        String[]ob=sql.split("\\s+");        for(String t:ob)            System.out.println(t);    }}
[解决办法]
使用StringTokenizer
String的split(" ")如果碰到有3个" "它把第一个做为匹配格式的 然后就得到后两个。
StringTokenizer的话是无视有几个" "的 都视为匹配的符号。
如:this is a test
得到:
this
is
a
test
[解决办法]
用StringTokenizer吧,标准的分割

[解决办法]
“\\s” A whitespace character: [ \t\n\x0B\f\r]

并不一定都是空格

读书人网 >J2SE开发

热点推荐