我有以下字符串:
String text = "stack Overflow, stack"
一个char:
char c = "*"
和另一个字符串:
String word = "Overflow"
整个想法是检查单词"溢出"在文本字符串中,用char c包围它。输出应该如下所示:
"stack *Overflow*, stack"
首先,为了解决这个问题,我考虑将字符串拆分为单词,然后检查每个单词是否包含所需的字符串作为其自身的子字符串。然后创建一个stringBuilder,并在单词的每一端附加char。我没有错误,但输出错误:
"stack *Overflow,* stack
有关如何正确解决此问题的任何帮助?
答案 0 :(得分:6)
这应该可以解决问题..
text = text.replace(word, c + word + c);
答案 1 :(得分:3)
您可以使用:
String text = "stack Overflow, stack";
char c = '*';
String repl = text.replaceAll("\\b(Overflow)\\b", c + "$1" + c);
//=> stack *Overflow*, stack