在我的应用程序中,它接受来自服务器的XML。其中一个函数返回一个名称列表,其中一些有撇号(例如O'Reilly)。
<?xml version="1.0" encoding="UTF-8" ?>
<user id="123456" name="Pat O\'Reilly" is_qualified="false" />
在我的解析器中,我尝试了两种不同的方法来摆脱转义斜杠,但它们都不起作用:
[[attributeDict valueForKey:@"name"] stringByReplacingOccurrencesOfString:@"\'" withString:@"'"]
和/或
[[attributeDict valueForKey:@"name"] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
打印这些都包括斜线:Pat O \'Reilly。有什么建议吗?
答案 0 :(得分:3)
您想要替换的内容是@"\\\'"
@"\'"
\
和'
都是特殊字符。
您甚至可能需要将@"\\\""
替换为@"\""
,以获取其他类似blaname="bla is \"bla\" and bla"
的文字。