高手帮下忙:   如有一个字符串add.dff,dad.ddd有什么办法只取他"."之前","之后的字段?显示出来就是add,dad?   就是到.就不显示后面的了,但要是遇到,的话又继续循环取.之后就不显示
      解决问题立即给分!   谢谢 

解决方案 »

  1.   

    我想你可能想用正则表达式来做,但我还不是很懂的.
    现给出一个比较笨的方法,希望能帮的上你哦!其实可能还可以优化一下的,你自己看看吧!       String testString = "add.dff,dad.ddd";
            String[] splits2 = testString.split(",");
            System.out.println(splits2.length);
            String tempSting = "";
            for (int i = 0; i < splits2.length; i++) {
                tempSting = tempSting + splits2[i].substring(0, splits2[i].indexOf(".")) + ",";
            }
            System.out.println(tempSting.substring(0,tempSting.length()-1));记得给分哦?
      

  2.   

    class Test{
    public static void main(String[] args) 
    {
    String s="add.dff,dad.ddd";
    String[] ss=s.split(",");
    for(int i=0;i<ss.length;i++){
    String[] str=ss[i].split("\\.");
    System.out.print(str[0]+" ");
    }

    }
      

  3.   

    这个不知道是否满足lz要求String source="add.dff,dad.ddd";
    String result = source.replaceAll("\\.[^,]*", "");
      

  4.   

    public static void main(String[] args){
    String str="add.dff,dad.ddd";//原始数据 
    String s="";//截取完的数据
    boolean isAppend=true;
    for(int i=0;i<str.length();i++){
    String ch= str.substring(i,i+1);
    if(ch.equals(".")){
    isAppend=false;
    }else if(ch.equals(",")){
    isAppend=true;
    }else{
    if(isAppend){
    s+=ch;
    }
    }
    }
    System.out.println(s);
    }