2012-09-14 45 views
0

我有這句話:在JAVA中用正則表達式改變字符串值

「我在20:00點有3個香蕉」。

我需要替換字符串中的數量,以便將包括Unicode:

「我\ u200e3 \ u200e在\ u200e20香蕉\ u200e:\ u200e00 \ u200e點」

+0

http://stackoverflow.com/a/2220476/846476將讓你的Unicode值。你可以替換所有的\ d找到數字 – RNJ

+0

[你似乎喜歡正則表達式和數字...](http://stackoverflow.com/q/12419998/1225328) – sp00m

回答

1

在你的榜樣更換可使用String.replaceAll()做到:

String string = "I have 3 bananas at 20:00 o'clock"; 
string = string.replaceAll("\\d+", "\\\\u200e$0\\\\u200e"); 
System.out.println(string); 

打印

I have \u200e3\u200e bananas at \u200e20\u200e:\u200e00\u200e o'clock 
0

準備一個hashmap爲數字可以解決您的問題。將數字作爲散列表的鍵,而值則是相應的Unicode值。然後使用replace()調用來將它們的值替換爲散列映射中的值。我希望這種方法是有道理的。

相關問題