JAVA的分割方法split的分割规则是怎么的??原理?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA的分割方法split的分割规则是怎么的??原理?相关的知识,希望对你有一定的参考价值。
String tes="boo:and:foo";
System.out.println("把tes按:分割为5组即一个数组为5个元素");
String[] d=tes.split("o",5);
for(String element: d)
System.out.println(element);
结果:是"b", " ", ":and:f", " " ," "
为什么这么分割呢?
这样想:"a,b,,,,,,,c,d",这个中间这么多逗号,如果以逗号分割,中间就会出先多个空
后面的也是一样的。 结果中倒数第二个空时后面两个o中间的空,
最后第一个空,时最后一个o后面的空
你可以试试在最后一个o后面加一个字符,这样结果中的最后一个空就变成了这个字符 。
另外如果你限制数组长度为4,String[] d=tes.split("o",4);,
输出的结果就会是这样:'b','',':and:f','o',最后一个o就不会被认为是分隔符了。 参考技术A 因为你是按照o分割的 不是: 你按照o当然是那个结果
public static void main(String[] args)
String aa= "aa:bb:cc:dd";
String [] aaa=aa.split(":");
String [] bbb=aa.split(":",2);
String line="";
for(int i=0;i<aaa.length;i++)
line=line+aaa[i]+"\t";
System.out.println(line);
line="";
for(int i=0;i<bbb.length;i++)
line=line+bbb[i]+"\t";
System.out.println(line);
按这个运行下 你就应该懂了
结果如下
aa bb cc dd
aa bb:cc:dd 参考技术B 自己写错了啊哥们,要细心,
程序员要细心啊!
模拟java的split函数,分割字符串,类似于java的split方法
本博客是自己在学习和工作途中的积累与总结,仅供自己参考,也欢迎大家转载,转载时请注明出处
http://www.cnblogs.com/king-xg/p/6362037.html
/*自定义oracle的分割函数*/
/*定义一个type,用户接收返回的数据集合类型*/
create or replace type splitType as table of varchar2(4000);
/*
参数1: 被分割的字符串
参数2:分割字符串,默认是英文逗号
*/
create or replace function split_str(str varchar2, split_char varchar2:=\',\')
return splitType pipelined
is
idx number(4);
orgin_str varchar2(1000):=str;
temp_str varchar2(1000);
split_length number:=0;
begin
-- 判断
select nvl(length(split_char),0) into split_length from dual;
if split_length=0 then
pipe row(str);
return;
end if;
select nvl(length(str),0) into split_length from dual;
if split_length=0 then
pipe row(str);
return;
end if;
idx:=instr(orgin_str,split_char);
loop
exit when idx=0;
temp_str:=substr(orgin_str,1,idx-1);
pipe row(temp_str);
orgin_str:=substr(orgin_str,idx+1);
idx:=instr(orgin_str,split_char);
end loop;
pipe row(orgin_str);
return;
end;
/**测试**/
select * from table(split_str(\'king,arise\',\',\'));
以上是关于JAVA的分割方法split的分割规则是怎么的??原理?的主要内容,如果未能解决你的问题,请参考以下文章
模拟java的split函数,分割字符串,类似于java的split方法