1、使用正则切割字符串
2、使用栈来缓存最长数字字符串下标

import java.util.*;
public class Main{
    public static void main(String [] args){
        getStringLen();
    }

    public static void getStringLen(){
        Scanner scan = new Scanner(System.in);
        while(scan.hasNext()){
            String [] input = scan.nextLine().split("[^0-9]");
            if(input.length == 0){
                System.out.println();
                continue;
            }
            if(input.length == 1){
                System.out.println(input[0] + ","+ input[0].length());
                continue;
            }
            Stack<Integer> stack = new Stack();
            stack.push(input[0].length());
            for(int i =input.length-1; i>=0;i--){
                if(input[stack.peek()].length() == input[i].length()){
                    stack.push(i);
                    continue;
                }

                if(input[stack.peek()].length() < input[i].length()){
                    stack.clear();
                    stack.push(i);
                    continue;
                }

            }
            int len = input[stack.peek()].length();
            while(!stack.empty()){
                System.out.print(input[stack.pop()]);
            }
            System.out.println(","+len);
        }
    }

}