java - 在 java String ReplaceAll 方法中未给出预期结果

标签 java

以下是使用replaceAll方法未给出预期结果的程序。

public class HelloWorld{
     public static void main(String []args){
         String source = "Stack Overflow is a question and answer (site) for professional.";
         String txt1 = "question and answer (site) for";
        String text2 = "changed question and answer (site) for";
        source = source.replaceAll(txt1, text2);
        System.out.println(source);
     }
}

如果我删除源、text1 和 text2 中单词“site”的括号(即方括号),则会给出正确的结果。有人可以帮我看看其中有什么问题吗?

最佳答案

replaceAll 方法采用正则表达式作为参数。由于括号是正则表达式中使用的字符,因此无法直接识别它们。你可以使用Pattern.quote获取文字字符串。

关于java - 在 java String ReplaceAll 方法中未给出预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27964280/

相关文章:

Java-异常处理

java - 如何使用网站的数据库连接到服务器,使用 GET 更安全

Linux 中的 Java 命令类路径和 PHP

java - 线程run()方法的相关注意事项?

java - 为什么我的对象在此类中被垃圾收集

java - 索引和搜索 CSV 表

java - "Main Method not Public"- 尝试在 Eclipse 上运行程序时出现错误消息

java - 如何让两个线程同时工作

java - 将数据从 XML 返回到 UI

java - 我应该如何将 json 值返回到另一个方法中