gpt4 book ai didi

ios - for循环后,未知引号添加到NSMutableArray中的字符串对象

转载 作者:行者123 更新时间:2023-12-01 18:48:09 25 4
gpt4 key购买 nike

我有一个NSString对象数组,这些对象包含一些不必要的字符(一个对象在控制台中看起来像这样:"\"stringContent\""),我将使用以下代码删除它们。它可以正常工作,但是当我登录arr1时,有50-60%的字符串都带有引号,例如"stringContent",其他字符串则没有。实际上,我的问题是我没有发生这种情况的原因,因为当我在for循环中记录字符串时,它们没有引号。有人知道会导致这种情况的原因吗?

NSMutableArray * arr1 = [[NSMutableArray alloc ]init];

for (NSString *str in self.stringArray) {

NSString *newString = [str substringToIndex:[brand length]-1];

NSString *nwstr = [newString substringFromIndex:1];

[arr1 addObject:nwstr];

NSLog(@"string %@", nwstr);

}
NSLog(@"array %@", arr1);

其他可能有所帮助的事情是,当我将其称为控制台中出现的每个对象时,好像对 containsString方法隐藏了引号,因为其中许多不满足if语句的要求。
for (NSString *str in arr1) {


if (![str containsString:@"\""]) {


NSLog(@"XXX %@", str);

}
}

最佳答案

当您使用NSLog记录NSArray或NSDictionary时,将以日志格式显示元素,该格式可以(或可以不)包含多余的引号,转义字符等。特别是,在字符串周围使用引号,当字符串中不包含非-时除外。字母字符或空格。

更详细的信息:实际上发生的是NSLog在内部调用[NSString stringWithFormat:]或其同类之一来格式化要记录的文本。 stringWithFormat:依次调用参数列表中与description格式指令相对应的每个对象的%@方法。 NSArray和NSDictionary的description方法添加了额外的字符。

关于ios - for循环后,未知引号添加到NSMutableArray中的字符串对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33322465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com