数组长度没有得到正确
问题描述:
我有这样的代码:数组长度没有得到正确
<%
str="D:\\projects\\curator\\java\\hpc"
no=str.count("\\")
splitstr=str.split(pattern="\\",no+1)
%>
在此之后我打印
<%= splitstr.length %>
它给我的输出9
。但splitstr
只有5
元素。
它是如何发生的。
答
您最终在您的阵列中有四个“”(空)字符串
答
使用这个代替..
splitstr=str.split("\\")
splitstr.length
答
1.9.3p385 :007 > str="D:\\projects\\curator\\java\\hpc"
=> "D:\\projects\\curator\\java\\hpc"
1.9.3p385 :008 > no=str.count("\\")
=> 4
1.9.3p385 :009 > splitstr=str.split(pattern="\\",no+1)
=> ["D:", "projects", "curator", "java", "hpc"]
1.9.3p385 :010 > splitstr.length
=> 5
1.9.3p385 :011 >
即时得到它的权利!
您最终在您的数组中有四个字符串。请参阅:http://stackoverflow.com/questions/11164236/how-to-split-a-string-containing-both-delimiter-and-the-escaped-delimiter – Fdr 2013-03-01 07:23:29
刚刚尝试了这一点,我得到了5 https:// gist.github.com/jvnill/5063030 – jvnill 2013-03-01 07:24:19
@Fdr:谢谢..那个链接帮助我找出问题。我现在得到了解决方案。 – 2013-03-01 08:13:17