如何在每个大写字母之间添加空格?

Or *_*ith 4 java regex

我尝试编写正则表达式以便:

  1. 在每个大写字母之间添加空格.
  2. 删除所有号码.

我有文字:ClassNameOne839,我想得到文字:Class Name One

有一个库函数可以做到吗?或任何正则表达式?

Kep*_*pil 11

你可以使用这样的replaceAll()调用组合:

String text = "ClassNameOne839";
String cleanText = text.replaceAll("\\d+", "").replaceAll("(.)([A-Z])", "$1 $2");
Run Code Online (Sandbox Code Playgroud)

这首先删除所有数字,然后在所有不在开头的大写字母之前添加一个空格String.$1并且$2是对正则表达式的第一和第二的引用.

  • 如果你想保留数字而谷歌把你带到这里,试试这个: String cleanText = text.replaceAll("(.)([A-Z0-9]\\w)", "$1 $2"); 输出:“班级名称一 839” (2认同)