空白字符常数在Java中



我们如何用java中的空白替换特定的char常数?

用太空char替换而不是空白。

输入:

    String amount = "1.22.33,11";

所需结果:12233,11

    String amount = "1.22.33,11";
    String result = amount.replace(".", "");
    System.out.println(result);

输出:

12233,11

无需使用正则表达式或外部依赖。

String类的replace​(CharSequence target, CharSequence replacement)方法用替换字符串替换了字面目标字符串的每一个出现。因此,只要将空字符串作为替换。

您的任务可以描述为删除.的出现。因此,用"空白"字符替换,无论是正确的解决方案,您仍然会有一些字符。相反,我们将单字符字符串替换为其他没有字符的字符串。

正如@lino在评论中指出的那样,JDK版本至少8个(我尚未检查9和10(将正则表达式编译为Pattern,以供该方法的每个调用。在Java 11中,已经提供了有效的实施。

您可以为此使用Regex:

String result = amount.replaceAll("\.", "");

.匹配每个文字周期(.(,并用一个空字符串(""(

代替它

,如果将正则态度作为 java.util.regex.Pattern保存到变量:

时,您可以进一步优化。
private static final Pattern DOT = Pattern.compile("\.");

然后您可以这样使用:

String result = DOT.matcher(amount).replaceAll("");

最新更新