我需要转义所有引号(“)的字符串,因此它成为\”的Java:更换所有“与字符串”
我使用的replaceAll试过,但它不会做任何事情。出于某种原因,我无法获得正则表达式的工作。
我试图用
String s = "You'll be totally awesome, I'm really terrible";
String shouldBecome = "You\'ll be totally awesome, I\'m really terrible";
s = s.replaceAll("'","\\'"); // Doesn't do anything
s = s.replaceAll("\'","\\'"); // Doesn't do anything
s = s.replaceAll("\\'","\\'"); // Doesn't do anything
我真的坚持在这里,希望有人能帮助我在这里。
感谢,
伊万
可能重复的[取代()和的replaceAll()中的Java(http://stackoverflow.com/questions/12941266/replace-and-replaceall-in-java) – user2864740
如果您还没有考虑到这一点,如果输入是以任何方式来自用户,那么您可能还需要先用双反斜杠替换任何反斜杠。就像用户输入''你'很棒''''',那么你现在就会''你'很棒'\''很棒''。由于用户输入的反斜杠在转义后逃避生成的反色,所以第三次引用没有转义。 – tobii