我正在使用Android,我想用另一个String替换String中某个{character}的所有出现次数。 例如,如果我们谈论的角色是'a'而且替换是“12”,那么:
Input : There are {a} months in a year.
Output : There are 12 months in a year.
我不知道如何处理replaceAll
方法和regexes
...
谢谢!
答案 0 :(得分:4)
为此,您可以使用String.format
int aInt = 12;
String.format("There are {%d} months in a year", aInt );
答案 1 :(得分:1)
你可以使用string.replace("{a}", "12")
它将所有出现的{a}替换为字符串中的12并且不会采用正则表达式。如果您需要搜索模式,请使用replaceAll
答案 2 :(得分:1)
由于你不需要在这里使用正则表达式,因此vishal_aim的答案更适合这种情况。
replaceAll
的第一次尝试是
String str = "There are {a} months in a year.";
str.replaceAll("{a}", "12");
但它不起作用,因为replaceAll
采用正则表达式而{}
是正则表达式中的特殊字符,因此您需要将其转义:
str.replaceAll("\\{a\\}", "12");
答案 3 :(得分:0)
String str = "There are {a} months in a year.";
str.replaceAll(Pattern.quote("{a}"), "12");
修改强>:
java.util.regex.Pattern.quote(String)方法返回指定String的文字模式String。