我有一个单引号的字符串。我想用2个单引号替换单引号。 我尝试使用
String s="Kathleen D'Souza";
s.replaceAll("'","''");
s.replaceAll("\'","\'\'");
s.replace("'","''");
s.replace("\'","\'\'");
但单引号并没有被2个单引号取代。
答案 0 :(得分:5)
将替换后的字符串重新分配给s
String s="Kathleen D'Souza";
s = s.replaceAll("'","''");
答案 1 :(得分:2)
请尝试 s =“test'test”;
`s.replaceAll("'","\"");` => test " test
`s.replaceAll("'","''");` => test '' test
答案 2 :(得分:0)
Strings
是不可变的。将replaceAll
的结果分配给您的String
:
s = s.replaceAll("'","''");
答案 3 :(得分:0)
String s="Kathleen D'Souza";
s= s.replace("'", "''");
尝试String#replace()。它将取代所有出现的单个'with double''。
答案 4 :(得分:0)
请注意,在给定的解决方案中,连续的单引号将加倍,因此Kathleen D''Souza变成了Kathleen D'''Souza。 (我看到用户会像这样智取自己。)如果这是你关心的事情,你可以将连续的单引号与:
相匹配 s = s.replaceAll("''*","''");