【发布时间】:2014-10-05 03:56:46
【问题描述】:
字符串输出为"data", "data1", "data2", "data3"
我希望它用' 替换",所以字符串输出将是'data', 'data1', 'data2', 'data3'
谢谢:)
【问题讨论】:
标签: java android string replace
字符串输出为"data", "data1", "data2", "data3"
我希望它用' 替换",所以字符串输出将是'data', 'data1', 'data2', 'data3'
谢谢:)
【问题讨论】:
标签: java android string replace
使用String class replaceAll method
语法: public String replaceAll (String regularExpression, String replacement)
你的情况
String str = "data", "data1", "data2", "data3";
str = str.replaceAll("\"", "'");
System.out.println(str);
然后你会得到输出为
'data','data1','data2','data3'
来自 Android API,replaceAll 说
将此字符串中的正则表达式与给定的替换匹配。
如果将同一个正则表达式用于多个操作,重用已编译的 Pattern 可能更有效。
【讨论】:
方法一:使用字符串replaceALL
String myInput = "\"data1\",\"data2\",\"data3\",\"data4\",\"data5\"";
String myOutput = myInput.replaceAll("\"", "'");
System.out.println("My Output with Single Quotes is : " +myOutput);
输出:
My Output with Single Quotes is : 'data1','data2','data3','data4','data5'
方法二:使用Pattern.compile
import java.util.regex.Pattern;
String myInput = "\"data1\",\"data2\",\"data3\",\"data4\",\"data5\"";
String myOutputWithRegEX = Pattern.compile("\"").matcher(myInput).replaceAll("'");
System.out.println("My Output with Single Quotes is : " +myOutputWithRegEX);
方法3:使用Apache Commons,定义如下:
http://commons.apache.org/proper/commons-lang/javadocs/api-z.1/org/apache/commons/lang3/StringUtils.html#replace(java.lang.String, java.lang.String, java.lang.String)
【讨论】:
只需使用 String 类就可以做到这一点:
String s = "data";
String replace = s.replace( "\"", "'");
System.out.println(replace);
【讨论】: