我明白了为什么使用正则表达式的字符串转换一样没有给出所需的输出FooBar到Foo_Bar这反而给了Foo_Bar_.我可以用String.substring做一些事情substring(0, string.length() - 2)或者只是替换掉最后一个字符,但我认为这种情况有更好的解决方案.
这是代码:
String regex = "([A-Z][a-z]+)";
String replacement = "$1_";
"CamelCaseToSomethingElse".replaceAll(regex, replacement);
/*
outputs: Camel_Case_To_Something_Else_
desired output: Camel_Case_To_Something_Else
*/
Run Code Online (Sandbox Code Playgroud)
问题:寻找更简洁的方法来获得所需的输出?