我有一个字符串,希望它的格式始终为一个加号后跟着数字。
以下内容可以实现:
String parsed = inputString.replaceAll("[^0-9]+", "");
if(inputString.charAt(0) == '+') {
result = "+" + parsed;
}
else {
result = parsed;
}
有没有一种方法,在
replaceAll
中使用正则表达式来保留字符串开头的+
(如果存在),并替换第一行中的所有非数字字符?
replaceAll
不会在没有加号的情况下添加加号,所以我不知道你在寻找什么。 - user180100(^[+])|[^0-9]+
并替换为$1
。 - Wiktor Stribiżewabd+3G45;{
这样的内容,这对我来说不太合理。你可能想要断言输入与某种模式[+]?\s*\d+\s*
匹配(白名单)。 - nhahtdh