2016-03-18 73 views
2

我在我的Java ireport中使用了replaceAll()函數作爲其中一個文本字段。 以下代碼需要將所有matche字符串替換爲$符號或\字符。但是,它只適用於replace()函數。

$P{name}.replaceAll('abc', '\$'); 

$P{name}.replaceAll('abc', '\\'); 

回答

3

使用雙轉義字符\

String str = "abc-d-abc"; 
str = str.replaceAll("abc", "\\$"); 
System.out.println(str); 

String str1 = "abc-d-abc"; 
str1 = str1.replaceAll("abc", "\\\\"); 
System.out.println(str1); 

更換:它將取代字符/字符串的字符串匹配的所有發生。替換無法處理正則表達式。

replaceAll:它將替換String中匹配的所有字符/字符串。 replaceAll可以處理正則表達式。 它更慢,因爲它必須處理正則表達式

+0

非常感謝,它使用雙轉義字符'\'後才起作用! –