NSString格式问题会自动附加\ x

时间:2016-04-26 07:44:23

标签: ios objective-c xcode nsstring

我发现这样的事情不是预期的

代码

NSString *strCrown2 = @"T-#-B-DAC";

当我在那里放置断点并检查我发现如下图像

enter image description here

有\ x,它不是字符串的一部分

在控制台中显示 T - # - B-DAC 它是正确的

我的问题是为什么 \ x 会在那里展示?

5 个答案:

答案 0 :(得分:1)

因为十六进制颜色

的前缀

您可以通过转义序列来解决它

NSString *strCrown2 = @"T-\#-B-DAC";

strCrown2 = [strCrown2 stringByReplacingOccurrencesOfString:@"\#" withString:@"200"];//outout:@"T-200-B-DAC"

您也可以只#不考虑'\ x'值,如下所示

 NSString *strCrown2 = @"T-#-B-DAC";
 strCrown2 = [strCrown2 stringByReplacingOccurrencesOfString:@"#" withString:@"200"];//outout:@"T-200-B-DAC"

答案 1 :(得分:1)

编辑: - 我找到了您的解决方案,但您无法看到,但尝试删除" - "在之前,它会首先删除一个空格,然后删除" - "将被删除。所以,在#

之前需要一个空格

并且,根据苹果文件,检查

NSRegularExpression

enter image description here

因此,在调试之前,只要删除它就会占用空格。

我希望这些信息对您有所帮助。

修改: -

enter image description here

将此内容写入x-code,

NSString *strCrown2 = @"T-#-B-DAC";

答案 2 :(得分:0)

\ x用于数字的十六进制表示。

您可以关注字符串说明符here

的链接

答案 3 :(得分:0)

我尝试过相同的字符串,可能是你没有使用x-code 7。 我没有像你一样,我认为它显示的是unicode字符串。 您可以在info.plist中添加字符串。它会起作用。

enter image description here

答案 4 :(得分:0)

我解决了它

enter image description here

enter image description here

我不知道两个字符串看起来是一样的