日期:2014-05-17  浏览次数:20645 次

很简单的字符串截取,见鬼的问题
代码我简化如下:
 
Java code

    String editValue = "1.12345600";
    String[] arr = ss.split(".");  //返回结果是空数组
    System.out.println(arr.length);  //结果 0

 

  我试了好几种方式,只要按 “.”截取,貌似都返回空数组,求解怎么回事,不应该的吧?

------解决方案--------------------
String[] arr = editValue.split("\\.")
------解决方案--------------------
ss 没定义吧
------解决方案--------------------
. 在正则里有特殊意义,要转义才行。
------解决方案--------------------
String.split(regular);

注意查下API,该函数接受的参数,是正则表达式字符串。

而 . 在正则表达式中,代表“任意字符”。
------解决方案--------------------
“.”在java中这样用需要转译的。 
String editValue = "1.12345600";
String[] arr = editValue.split("\\."); 
System.out.println(arr.length); 
这样就可以了。
------解决方案--------------------
学习了 以前都不知道
------解决方案--------------------
在字符串里好多东西都要经过转义的才是显示争取,比如常见的 \ 和 " 好都不能直接在字符串里定义的要转义的, "."也是其中之一
------解决方案--------------------
有几个特殊符号都必须用转义。。。。