2012-08-03 108 views
0

在Java字符串,它看起來像下面替換#\u0023替換#使用 u0023在Java字符串

{subjectCategory: 「S123」,subjectId: 「111222333」,內容:「試驗#comment999 」 OWNERID: 「111」,OWNERNAME: 「測試」}

String.replace("#","\\u0023"); 

我已經試過了上述功能,但它似乎並沒有工作。

+0

你是什麼意思用「不起作用」?你想實現什麼?使用這個函數的結果是什麼? – Baz 2012-08-03 07:29:34

+0

請澄清你想要什麼? ** a)**輸入:'#',所需輸出:'\ u0023'或** b)**輸入:'\ u0023',所需輸出:'#' – mmdemirbas 2012-08-03 07:32:46

+0

我想用#替換# – 2012-08-03 07:43:34

回答

3

你需要用一個反斜槓轉義反斜線:

string = string.replace("#", "\\u0023"); 

測試:

String s = "hello # world"; 
s = s.replace("#","\\u0023"); 
System.out.println(s); // prints hello \u0023 world 
+0

我已經試過這個功能,它似乎沒有工作 – 2012-08-03 07:22:52

+0

它是做什麼的呢? – 2012-08-03 07:25:31

3

不要忘記分配給一個變量

String toUse = myString.replace("#", "\\u0023"); 

可能,您希望在replace() c後使用相同的字符串所有。但是,字符串是不可變的,所以將創建一個新的字符串與replace()調用。你需要使用它,所以使用toUse變量。

注意:正如評論中所說,您也可以再次使用old變量,而不是聲明新變量。但確保replace呼叫的分配結果是:

myString = myString.replace("#", "\\u0023"); 
+0

嘗試過,它不適用於我的輸入字符串 – 2012-08-03 07:24:47

+0

@sagarvikani你是什麼意思與「不工作」?你想實現什麼?使用這個函數的結果是什麼? – Baz 2012-08-03 07:26:50

+1

你確定你想用'\ u0023'替換'#'。可能你想用'#'替換'\ u0023'? – mmdemirbas 2012-08-03 07:27:46

0

你需要在你想在String更換,而不是靜態方法字符串實例應用replace

myString="test #comment999"; 
myString.replace("#", "\\u0023"); 
+0

試過,它不適用於我的輸入字符串 – 2012-08-03 07:24:53