jjn*_*guy 72
以下代码应该用a替换最后一次出现的','a ')'.
StringBuilder b = new StringBuilder(yourString);
b.replace(yourString.lastIndexOf(","), yourString.lastIndexOf(",") + 1, ")" );
yourString = b.toString();
Run Code Online (Sandbox Code Playgroud)
注意 如果String不包含异常,则抛出异常','.
Naw*_*Man 37
您可以使用正则表达式:
String aResult = "Insert into dual (name,date,".replaceAll(",$", ")");Run Code Online (Sandbox Code Playgroud)
replaceAll(...)将字符串字符串与给定的正则表达式(参数1)匹配(在这种情况下,如果它是逗号,我们匹配最后一个字符).用替换(参数2)替换它(在这种情况下是' )').
加!如果要确保使用拖尾空格和制表符,可以将正则表达式更改为" ,\[ \t\]*$".注意' \['和' \]'没有反斜杠(我不知道如何正确地逃避它).
希望这可以帮助.
小智 17
这是一种自定义方法,仅替换给定字符串的最后一个子字符串.它对你有用:
private String replaceLast(String string, String from, String to) {
int lastIndex = string.lastIndexOf(from);
if (lastIndex < 0) return string;
String tail = string.substring(lastIndex).replaceFirst(from, to);
return string.substring(0, lastIndex) + tail;
}
Run Code Online (Sandbox Code Playgroud)
使用Apache Commons 的StringUtils 函数removeEnd():
StringUtils.removeEnd("www.domain.com", ".com") = "www.domain"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
89256 次 |
| 最近记录: |