有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何删除字符串末尾的运行字符?

假设我已经将一个像130,233,320,000,000,000这样的大数解析为130,233,320,,,,我如何递归地删除运行逗号的子字符串以获得像130,233,320这样的输出

递归算法似乎很简单,如:

public String parseEnd(String s) {
  if(s.substring(s.length-1) == ",") {
     return s.substring(0, s.length-2);
  }
  return s;
}

共 (1) 个答案

  1. # 1 楼答案

    好了:

    str = str.replaceAll(",+$", "");
    

    这将用空字符串替换结尾处的一个或多个,

    • ,+匹配1个或多个commas
    • $表示字符串的结尾

    现在,有一件事我不明白,你是怎么从那个字符串中得到consecutive commas的?你不能直接用comma替换所有的000吗?这将类似于:

    str = str.replaceAll("(?:,0+)+$", "");