使用java如何在单个字符串中单独替换字符串中的字符?
例如:
将单*
替换为#
输入字符串:
a*b**c*d***e
输出字符串:
a#b**c#d***e
inputString.replaceAll("*", "#");
替换所有*s
并返回a#b##c#d###e
答案 0 :(得分:5)
您可以使用negative lookahead and lookbehind:
String s = "a*b**c*d***e";
String r = s.replaceAll("(?<!\\*)\\*(?!\\*)", "#"); // a#b**c#d***e
这里写着:“a *前面没有*,后面没有*”(注意*
必须在正则表达式中转义,因为它是元字符)。
答案 1 :(得分:-1)
尝试使用charAt(n)方法,将数字n(参数)设置为*单个数字,然后将字符串设置为“#”,看看是否有帮助。