有没有办法使用正则表达式包含变量来替换字符串中的字符

时间:2019-04-18 17:27:00

标签: java regex replace

我已经有了代码s.replaceFirst("\\.", "");。这将替换给定字符串s中的点。但是我的问题是,它应该能够更改,将要替换的内容。例如,该程序现在必须替换问号。我尝试这样做如下:

String characterToReplace = "?";
s = s.replaceFirst("\\" + characterToReplace, "");

但这只会造成错误。

1 个答案:

答案 0 :(得分:3)

尝试使用Pattern.quote,已讨论过here

import java.util.regex.Pattern;

// ...

String characterToReplace = "?";
s = s.replaceFirst(Pattern.quote(characterToReplace), "");