在java中拆分单词时遇到问题

时间:2015-02-25 15:47:14

标签: java regex string

我有以下字符串:

String text = "stack Overflow, stack"

一个char:

char c = "*"

和另一个字符串:

String word = "Overflow"

整个想法是检查单词"溢出"在文本字符串中,用char c包围它。输出应该如下所示:

"stack *Overflow*, stack"

首先,为了解决这个问题,我考虑将字符串拆分为单词,然后检查每个单词是否包含所需的字符串作为其自身的子字符串。然后创建一个stringBuilder,并在单词的每一端附加char。我没有错误,但输出错误:

"stack *Overflow,* stack

有关如何正确解决此问题的任何帮助?

2 个答案:

答案 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