1、但要注意,在字符串的前部有时候是需要与数字的。这个是啥意思?
2、格式都是xxxxx查结果xxxfile.file.xls这样的形式吗?

解决方案 »

  1.   


    就是 字符的 山2103(女)272查结果 和file.xls都是一样的。不一样的地方是两者之间的数字比如1,14,2等等
      

  2.   


    山2103(女)272查结果1file.xls
    山2103(女)272查结果14file.xls
    山2103(女)272查结果15file.xls
    山2103(女)272查结果2file.xls除了红色注明的地方外,其他地方都一样。其实就是想红色注明的数字排序
      

  3.   

    public static void main(String[] args) {

    String[] strArray={"山2103(女)272查结果1file.xls","山2103(女)272查结果14file.xls","山2103(女)272查结果15file.xls","山2103(女)272查结果2file.xls"};
    String[] sortedArray=sortedStr(strArray);
    System.out.println(Arrays.toString(sortedArray));
    }

    private static String[]  sortedStr(String[] strArray){
    Map<Integer,String> map = new HashMap<Integer,String>();
    String[] sortedArray = new String[strArray.length];
    for(String str :strArray){
    int number =Integer.parseInt(str.substring(str.lastIndexOf("果")+1,str.length()-8));
    map.put(number, str);
    }
    Integer[] intArray = new Integer[strArray.length];
    Arrays.sort(map.keySet().toArray(intArray));

    for(int j=0;j<sortedArray.length;j++){
    sortedArray[j]=map.get(intArray[j]);
    }
    return sortedArray;
    }
      

  4.   


    山2103(女)272查结果1file.xls
    山2103(女)272查结果14file.xls
    山2103(女)272查结果15file.xls
    山2103(女)272查结果2file.xls除了红色注明的地方外,其他地方都一样。其实就是想红色注明的数字排序但如果 山2103(女)272查结果 和后面的 file.xls是统一变化的 怎么办。我的意思是红色部分始终是数字,但其他部分不一定是什么,唯一肯定的是,其他部分的变化是同时的,比如272变成A或者300之类的
      

  5.   


    山2103(女)272查结果1file.xls
    山2103(女)272查结果14file.xls
    山2103(女)272查结果15file.xls
    山2103(女)272查结果2file.xls除了红色注明的地方外,其他地方都一样。其实就是想红色注明的数字排序但如果 山2103(女)272查结果 和后面的 file.xls是统一变化的 怎么办。我的意思是红色部分始终是数字,但其他部分不一定是什么,唯一肯定的是,其他部分的变化是同时的,比如272变成A或者300之类的那就要麻烦些了,这样就先要找到数字的前后两部分内容,然后再截取了,至于怎么找到这部分相同的内容,可以随便取两个,比如取前两个字符串,然后比较这两个字符串找出数字前后相同的部分,清楚吗?