String str = "g.dah='1234567899' and c.lx='西医'";str.substring( str.lastIndexOf("and"),str.lastIndexOf("c"))
String str = "g.dah='1234567899' and c.lx='西医' and c.a='a' and c.b='b'"; String[] strArray=str.split(" and "); Vector wannaStrings=new Vector(); for(int i=0;i<strArray.length;i++){ if(strArray[i].indexOf("c")==0){ wannaStrings.add(strArray[i]); } } 在wannaStrings这个Vector中就是你想要的以“c.”开头的东西,如果需要你再自己把组字符串吧
String str = "g.dah='1234567899' and c.lx='西医' and c.a='a' and c.b='b'"; String[] strArray=str.split(" and "); Vector wannaStrings=new Vector(); for(int i=0;i<strArray.length;i++){ if(strArray[i].indexOf("c")==0){ wannaStrings.add(strArray[i]); } } 在wannaStrings这个Vector中就是你想要的以“c.”开头的东西,如果需要你再自己把组字符串吧 ----------------------这个方法设计本身就有问题,如果我的 String str = "g.dah='1234567899' and c.lx='西医' and c.a='a' and c.b='b'"; 改成 String str = "g.dch='1234567899' and c.lx='西医' and c.a='a' and c.b='b' and bb.ca='sss'";怎么办? 你按and分割,然后只判断是否存在c就放进去了,那样很容易出错. 我试了下正则,因为条件太过于模糊,没有办法确认到很精确的数据,建议楼主把需求提出来,建议采用变通的实现方式
参考java.util.regex
String[] strArray=str.split(" and ");
Vector wannaStrings=new Vector();
for(int i=0;i<strArray.length;i++){
if(strArray[i].indexOf("c")==0){
wannaStrings.add(strArray[i]);
}
}
在wannaStrings这个Vector中就是你想要的以“c.”开头的东西,如果需要你再自己把组字符串吧
String[] strArray=str.split(" and ");
Vector wannaStrings=new Vector();
for(int i=0;i<strArray.length;i++){
if(strArray[i].indexOf("c")==0){
wannaStrings.add(strArray[i]);
}
}
在wannaStrings这个Vector中就是你想要的以“c.”开头的东西,如果需要你再自己把组字符串吧
----------------------这个方法设计本身就有问题,如果我的
String str = "g.dah='1234567899' and c.lx='西医' and c.a='a' and c.b='b'";
改成
String str = "g.dch='1234567899' and c.lx='西医' and c.a='a' and c.b='b' and bb.ca='sss'";怎么办?
你按and分割,然后只判断是否存在c就放进去了,那样很容易出错.
我试了下正则,因为条件太过于模糊,没有办法确认到很精确的数据,建议楼主把需求提出来,建议采用变通的实现方式
这样更严谨一些
icefire1512(花花) 的方法我觉得比较符合我的想法~~~~
String s = "g.dah='1234567899' and c.lx='西医' ";
String s1 = s.substring(s.indexOf("c."));
String target = null;
if(s1.indexOf("' ") == -1){
target = s1;
}else {
target = s1.substring(0,s1.indexOf("' ")+1);
}
应该可以了,没时间调了,你自己测一下。
大哥,我是在判断是不是以“c.”开头,不是在判断是否存在“c”这个字符:)
------------------------------如果出现cxsads.dd= 'xxx'的话,你怎么办。也算?
这种以字符判断的方法本身就是不合理的,麻烦严格一点对待开发好不好