gpt4 book ai didi

java |通过正则表达式传递插入符号

转载 作者:行者123 更新时间:2023-12-01 07:52:35 25 4
gpt4 key购买 nike

我正在制作一种需要用“^”替换所有“^”的方法。但我使用的是 .replaceAll(),它接受正则表达式作为参数,插入符号 (^) 表示或除正则表达式之外的所有内容。它甚至没有转义字符。

那么我该怎么做呢?

String a = "8^2";

public static String magicMethod(String a) {
return a.replaceAll("^", " ^ "); // makes everything compile funny
}

最佳答案

您可以使用反斜杠 (\) 转义所有特殊正则表达式字符。由于反斜杠也是 Java 字符串文字转义字符,因此在写入 Java 字符串时必须将其加倍。

a.replaceAll("\\^", " ^ ")

如果您想使用 replaceAll() 并且搜索字符串和/或替换值是纯文本,您可以让字符串自动转义。

a.replaceAll(Pattern.quote("^"), Matcher.quoteReplacement(" ^ "))

这通常仅在搜索字符串和/或替换值是动态时使用。当恒定时,就像您的情况一样,使用反斜杠转义。

关于 java |通过正则表达式传递插入符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34890127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com