在String中使用replace(CharSequence target, CharSequence replacement)
方法,如何让目标不区分大小写?
例如,它现在的工作方式:
String target = "FooBar";
target.replace("Foo", "") // would return "Bar"
String target = "fooBar";
target.replace("Foo", "") // would return "fooBar"
我怎样才能使其替换(或者如果有更合适的方法)不区分大小写,以便两个示例都返回“Bar”?
最佳答案
String target = "FOOBar";
target = target.replaceAll("(?i)foo", "");
System.out.println(target);
输出:
Bar
值得一提的是,replaceAll
将第一个参数视为正则表达式模式,这可能会导致意外结果。要解决这个问题,也可以使用 Pattern.quote
正如评论中所建议的那样。
关于java - 如何在 Java 中替换不区分大小写的文字子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5054995/