2014-12-04 42 views
-4

如何在java中重複給定字符串的每個字符?如何在java中重複給定字符串的每個字符?

例如:

String s = "Hello"; 

變爲:

s = "HHeelllloo"; 
+5

提示:使用StringBuilder和'for'循環。你事先知道結果字符串的大小。 – Bathsheba 2014-12-04 08:52:01

+1

你的老師想要你做什麼是[閱讀字符串類的文檔](http://docs.oracle.com/javase/8/docs/api/java/lang/String.html),找到方法這可以幫助你解決這個問題,並以正確的方式將它們結合起來。 – Philipp 2014-12-04 08:54:07

回答

9

使用正則表達式!

s = s.replaceAll(".", "$0$0"); 

好的,那麼這是如何工作的?

replaceAll()方法採用正則表達式作爲搜索詞,並且點匹配每個字符。所以每個角色都會被替換。

替換術語可以包含反向引用到捕獲的基團,其被編碼爲$n,其中n是1-9。但有一個特殊的隱式組0表示整個匹配,所以$0$0意味着「整場比賽兩次」。

總體而言,英文意思是「用兩個副本替換每個角色」。

+0

加1;聰明的小狗。 – Bathsheba 2014-12-04 08:54:47

+1

當你給他們一個他們無法理解的解決方案時,你不會幫助OP學習java,沒有任何解釋。 – Philipp 2014-12-04 08:54:52

+0

不,但答案是好的。結束這個問題,不要低估答案。 – Bathsheba 2014-12-04 08:55:16

相關問題