【问题标题】:Error while using the replaceAll() method使用 replaceAll() 方法时出错
【发布时间】:2017-09-27 02:16:30
【问题描述】:

我有一些看起来像这样的代码:

str.replaceAll('$', ' ');
return str;

我在这里尝试做的是用空格替换字符串 str 中的每个 $ 实例。但是编译时出现这个错误:

incompatible types: char cannot be converted to String
        str.replaceAll('$', ' ');
                       ^

但我没有将任何内容转换为字符串,而是将字符替换为空格字符。那么为什么会出现这个错误呢?

【问题讨论】:

标签: java string character replaceall


【解决方案1】:

根据javadocs,您要使用的方法是

public String replaceAll(String regex,
                String replacement)

所以你的代码应该是这样的

str.replaceAll ("$", "");  

注意

如果您确实需要使用replaceAll,请转义“$”标记\\$

但是

在正则表达式中,“$”具有特殊含义(字符串的结尾)并且您没有任何特殊的正则表达式要求,然后使用 replace 代替

str = str.replace ("$", "");  

【讨论】:

    【解决方案2】:

    replaceAll 需要两个字符串,但您传递的是字符。使用 " 而不是 '

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-03
      • 2012-01-19
      • 1970-01-01
      • 2016-02-26
      • 1970-01-01
      • 2022-08-18
      • 1970-01-01
      相关资源
      最近更新 更多