2013-10-10 102 views
11

我有字符串变量strVar,其值为' "value1" ',我想用' \" '替换值中的所有双引号。所以重置后的值看起来像' \"value1\" '如何在java中用替换字符串中的“(双引号)

如何在java中做到这一点? 请帮助我。

+0

是否你的代码编译?是“'value1'”'你在源代码中看到了什么,或者你在打印时看到了什么? –

回答

29

您正在寻找

strVar = strVar.replace("\"", "\\\"") 

DEMO

我会避免使用replaceAll,因为它使用正则表达式语法什么的描述来代替以及如何更换,这意味着\将不得不进行转义在字符串"\\",但也在正则表达式\\(需要写为"\\\\"字符串),这意味着我们将需要使用

replaceAll("\"", "\\\\\""); 

或可能少许清洁剂:

replaceAll("\"", Matcher.quoteReplacement("\\\"")) 

随着replace我们已经逃逸机制自动添加。

+1

@ManuelM。应该工作正常。 –

+0

我把它与replaceFirst ^^混合在一起 –

0

字符串格式化为双引号。你有什么是单引号,用于char s。你想要的是这样的:

String foo = " \"bar\" ";

5

实际上它是: strVar.replaceAll("\"", "\\\\\"");

0

这应该给你想要的东西;

System.out.println("'\\\" value1 \\\"'"); 
0

要更换双引号

str=change condition to"or"  

str=str.replace("\"", "\\""); 

更换后:变化条件\ “或\”

要替换单引号

str=change condition to'or'  

str=str.replace("\'", "\\'"); 

更换后:改变公司ndition到\“或\”

3

例如采用一种结构类似这样的--- >>>

String obj = "hello"How are"you"; 

一个字符串,你想空白值或其他字代替所有的双引号,如果你想修剪所有的双引号。

只要做到这样,

String new_obj= obj.replaceAll("\"", ""); 
相关问题