2014-10-11 103 views
-3

我有这个字符串变量:如何用java替换字符串中的特定单词?

String a = "malam mingguan bareng geng motor kepominfo kemkominfo bem rema upi"; 

我想要做的就是取代“马拉姆mingguan”到“马拉姆-mingguan”。输出将如下:

String a = "malam-mingguan bareng geng motor kepominfo kemkominfo bem rema upi"; 

我该怎么做?

+0

'String.replaceAll',搜索StackOverflow,你会得到很多例子。 – blackSmith 2014-10-11 11:40:40

+3

@blackSmith:'replace()'比'replaceAll()'好得多。 – Keppil 2014-10-11 11:41:05

+0

@Keppil:我的错。感谢您指出。这个问题很可能是重复的。 – blackSmith 2014-10-11 11:42:15

回答

1

您可以使用replaceAll函数。

代码:

String a = "malam mingguan bareng geng motor kepominfo kemkominfo bem rema upi"; 
System.out.println(a.replaceAll("(?<=malam)\\s(?=mingguan)", "-")); 

输出:

malam-mingguan bareng geng motor kepominfo kemkominfo bem rema upi 
+0

这是有效的,但它并不完全符合OP要求的结果,即使结果在这种情况下也是如此。它也过于复杂。一个简单的'replace()'在这里肯定是更好的选择。 – Keppil 2014-10-11 11:48:45

+0

是的,我同意。首先问题是与标签正则表达式.. – 2014-10-11 11:49:57

0

只需拨打replaceAll与像malam\s+mingguan正则表达式:

a.replaceAll("malam\\s+mingguan", "malam-mingguan"); 
相关问题