问题
How can I replace single quote ' with empty string in Java. I tried following but doesn't seem to be working.
String data="Sid's den";
data.replace("'", "");
data.replaceAll("'", "");
Thanks in advance. Any help is much appreciated.(Output should be: Sids den)
Thanks guys for your responses. I guess I should have been more clear about my question. Basically I am getting special characters from the table and with what value we have to replace that also from the same table. Here is snippet of the code:
query = "select spl_char, replace_with from entcon_splchars";
ptsmt = DBConnector.sqlConnection.prepareStatement(query);
rs = ptsmt.executeQuery();
while (rs.next()) {
if(data.contains(rs.getString("spl_char"))){
data = data.replace(rs.getString("spl_char"),rs.getString("replace_with"));
}
}
so whenevr in the data we have special character ' then I am facing nullpointer exception. Please suggest how to go ahead with this?
回答1:
Strings are immutable so you'll receive a new instance. Try
data = data.replace("'", "");
Your Edit
Check the return values of getString()
- you could get your NPE
because your database table contains null
values in one of the columns spl_char
or replace_with
.
回答2:
Use replace
, no need for regex.
Remember that String
s are immutable, so you need to assign data.replace("'", "");
to a variable.
For instance: data = data.replace("'", "");
回答3:
I can see your problem, If you need to replace it you need to replace it and also need to assign it back to the variable. Solution should be,
String data="Sid's den";
data = data.replaceAll("'", "");
System.out.println(data);
Because String is immutable in java. But StringBuffer and StringBuilder is mutable in java.
String
StringBuffer
StringBuilder
回答4:
Just try with:
"foo'bar'buz".replace("'", "")
Output:
"foobarbuz"
In your case:
String data = "Sid's den";
String output = data.replace("'", "");
回答5:
Try:
data = data.replace ("'", "") ;
OR
data = data.replaceAll("'", "") ;
You would need to assign the replaced string to a variable.
来源:https://stackoverflow.com/questions/24015213/how-to-replace-with-empty-string-in-java