如何增加字符串变量?

时间:2015-07-04 07:07:44

标签: java

我有一个字符串

String a="ABC123";

如何增加上面的字符串,以便我得到输出:

ABC124
ABC125...and so.

4 个答案:

答案 0 :(得分:4)

"read string"

答案 1 :(得分:0)

解析为数字并重建为字符串以供将来使用。 有关解析方面的信息,请参阅How to convert a String to an int in Java?

答案 2 :(得分:0)

试试这个

 static final Pattern NUMBER_PATTERN = Pattern.compile("\\d+");

 static String increment(String s) {
     Matcher m = NUMBER_PATTERN.matcher(s);
     if (!m.find())
         throw new NumberFormatException();
     String num = m.group();
     int inc = Integer.parseInt(num) + 1;
     String incStr = String.format("%0" + num.length() + "d", inc);
     return  m.replaceFirst(incStr);
 }

 @Test
 public void testIncrementString() {
     System.out.println(increment("ABC123"));  // -> ABC124
     System.out.println(increment("Z00000"));  // -> Z00001
     System.out.println(increment("AB05YZ"));  // -> AB06YZ
 }

答案 3 :(得分:0)

如果字符串必须以这种方式/(你不是发电机)会做类似的事情:

    String a="ABC123";
    String vals[]=a.split("[A-Za-z]+");

    int value=Integer.parseInt(vals[1]);
    value++;
    String newStr=a.substring(0,a.length()-vals[1].length())+value;
    System.out.println(newStr);

但如果你单独生成它会更好:

   String a="ABC";
   int val=123;

   String result=a+val;
   val++;
   result=a+val;
   System.out.println(""+result);