服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java 正则表达式自义bean


  java 正则表达式自义bean

1.因为jdk1.4以下string类未曾使用split 方法,所以为了能够在jdk1.3以下的版本使用,正义了如下类



package pubbean;

import java.util.*;

/**

*

* <p>title: </p>

* <p>description:通过分解符分解由特定字符分开的字符串,并把返回一个数组如果 </p>

* <p>copyright: copyright (c) 2004</p>

* <p>company: </p>

* @author 丁小龙

* @version 1.0

*/

public class patten {

vector arravl=new vector();

string compchar;

public patten() {

try {

jbinit();

} catch (exception ex) {

ex.printstacktrace();

}

}

private vector split(string src,string charat,string self){



int len=src.indexof(charat);

if(len==-1&&src=../../=null)

return arravl ;

if(len==-1){

arravl.addelement(src);

return arravl;

}else

arravl.addelement(src.substring(0,len));

return split(src.substring(len+charat.length(),src.length()),charat,self);

}

public string[] split(string src,string charat){

arravl.removeallelements();

vector retvec=split( src,charat,"1");

if(retvec.size()==0||retvec==null)

return null;

string []arrret=new string[retvec.size()];

for(int i=0;i<retvec.size();i++){

arrret[i]=(string)retvec.elementat(i);

}



return arrret;

}



public void compile(string com){

this.compchar=com;

}



public string[] split(string src){

arravl.removeallelements();

string comch="";

if(this.compchar==null){

comch=",";

}else{

comch=this.compchar;

}

vector retvec=split( src,comch,"1");

if(retvec.size()==0||retvec==null)

return null;

string []arrret=new string[retvec.size()];

for(int i=0;i<retvec.size();i++){

arrret[i]=(string)retvec.elementat(i);

}



return arrret;

}



private void jbinit() throws exception {

}





}

2.用法

string mm=”aaaaaaaa,,,aaa,,,bbbb,,,ddddddd,,,mmm”;



patten p = new patten();

p.compile(",,,");

string []arrspt=p. split(mm);

扫描关注微信公众号