参数
AND_ThalassemiaGeneTest_TGTAlphaBehind__3.7α
或者是:
AND_ThalassemiaGeneTest_TGTAlphaBehind__ _SEA想要把参数拆分为:AND  ThalassemiaGeneTest    TGTAlphaBehind    _3.7α
          AND   ThalassemiaGeneTest    TGTAlphaBehind   _ _SEA

解决方案 »

  1.   


    System.out.println("AND_ThalassemiaGeneTest_TGTAlphaBehind__3.7α".replaceFirst("_ThalassemiaGeneTest_TGTAlphaBehind_"," ThalassemiaGeneTest TGTAlphaBehind "));
    System.out.println("AND_ThalassemiaGeneTest_TGTAlphaBehind__ _SEA".replaceFirst("_ThalassemiaGeneTest_TGTAlphaBehind_"," ThalassemiaGeneTest TGTAlphaBehind "));

      

  2.   

    现在我要得到一个数组:arr:[AND, ThalassemiaGeneTest, TGTAlphaBehind, _3.7α]
    从中得到:
    连接符:arr[0]
    表名:arr[1]
    字段名:arr[2]
    字段值:arr[3]
    用于数据库查询的
      

  3.   


    String resulString = "AND_ThalassemiaGeneTest_TGTAlphaBehind__3.7α".replaceFirst("_ThalassemiaGeneTest_TGTAlphaBehind_"," ThalassemiaGeneTest TGTAlphaBehind ");
    ;;
    String arr[] = resulString.split(" ");
    for(String s : arr){
        System.out.println(s);
    }
      

  4.   


    上面的两个参数要使用同一个方法,进行拆分,,,,不能一个参数,写一个拆分方法,用户可以输入任意形式的字符串,传过来的参数还可能是 AND_ThalassemiaGeneTest_TGTAlphaBehind_BJFKD
    或者AND_ThalassemiaGeneTest_TGTAlphaBehind_8Jdld
    等等,
    要使用一个通用的方法,进行拆分,
      

  5.   


    用正则for examplepublic static void getNum(String str) {
    System.out.println(str.replaceAll("[a-zA-Z0-9]_", " "));
    for (String s : str.split("[a-zA-Z0-9]_")) {
    System.out.println(s);
    }
    }
      

  6.   

    先截取到最后一个_,然后split("_")得到数组,进行数组扩容把最后的字符串加进去
      

  7.   


    你给多几组数据还是不够特殊,或者说你没考虑全面。你那几组数据压根不需用正则。使用indexOf() 和 SubString() 都可以对付了
      

  8.   

    如果参数是:AND_ThalassemiaGeneTest_TGTAlphaBehind_8J_dld
    其中8J_dld是用户的输入的值,
    这样正则表达式不通用了啊
      

  9.   

    看看这个满足你的要求么,不过你还需要再加上一些异常处理
    import java.util.Arrays;/**
     * Created by IntelliJ IDEA.
     * User: Administrator
     * Date: 2011-9-30
     * Time: 13:25:53
     * To change this template use File | Settings | File Templates.
     */
    public class StringHandler {
        public static String[] splitYourStr(String str){
             String[] yourWant=new String[4];
            String connect="_";
            int a=str.indexOf(connect);
            int b=str.indexOf(connect,a+1);
            int c=str.indexOf(connect,b+1);        yourWant[0]=str.substring(0,a);
            yourWant[1]=str.substring(a+1,b);
            yourWant[2]=str.substring(b+1,c);
            yourWant[3]=str.substring(c+1);        System.out.println(Arrays.toString(yourWant));
            return yourWant;
        }
        public static void main(String[] args){
            String str="AND_ThalassemiaGeneTest_TGTAlphaBehind__3.7α";
    //        String str="AND_ThalassemiaGeneTest_TGTAlphaBehind__ _SEA";
            String[] r=splitYourStr(str);
            System.out.println(Arrays.toString(r));
        }
    }
      

  10.   

    楼主你看这样怎么样
    String str="AND_ThalassemiaGeneTest_TGTAlphaBehind_BJFKD";
    String s1=str.substring(0,str.lastIndexOf("_"));  
    String s2=str.substring(str.lastIndexOf("_")+1,str.length());
    String[] arr=s1.split("_");
    arr=Arrays.copyOf(arr,arr.length+1);
    arr[arr.length]=s2;
    for(String s:arr){
       System.out.println(s);
    }
      

  11.   

    还是写一个吧,不管对你是否有用 
        static String[] getResult(String src){
    String[] result = new String[4];
    int pre = 0;
    for(int i=0; i<3; i++){
        int index = src.indexOf("_",pre);    
        result[i] = src.substring(pre,index);
        pre = index+1;
    }
    result[3] = src.substring(pre); 
    return result;
        }
      

  12.   

    你指谁啊 这里这么多人 我XXXXXXXXX