Java Regex参数

5 java regex arguments

因此,如果我希望用给定值替换所有数字,我可以使用

"hello8".replaceAll("[1-9]", "!");
Run Code Online (Sandbox Code Playgroud)

你好!

现在有办法获得实际匹配的数字并将其添加到字符串中吗?

例如

您好!8

Kob*_*obi 6

一种选择是设置捕获组:

"hello8".replaceAll("([1-9])", "!$1");
Run Code Online (Sandbox Code Playgroud)

另一个选择是使用$0,这意味着整个匹配:

"hello8".replaceAll("[1-9]", "!$0");
Run Code Online (Sandbox Code Playgroud)

另见:regular-expressions.info/java