1

我收到来自第三方 SDK 之一的响应,现在如何检查我的字符串值是否存在于响应中?我需要与密钥进行比较的friendlyName密钥。

 channelList = (
     "<<TCHChannel: 0x2816df040>: sid: 'CH84', friendlyName: 'Mihir : MihirOza', attributes: '(null)'>",

     "<<TCHChannel: 0x2816dc480>: sid: '644d', friendlyName: 'Testchannel2', attributes: '(null)'>",

     "<<TCHChannel: 0x2816dff40>: sid: 'df38', friendlyName: 'privateios', attributes: '(null)'>" )  

这是我正在使用的代码。

TCHChannels *channelsList = [[[ChatManager sharedManager] client] channelsList];
NSMutableOrderedSet<TCHChannel *> *newChannels = [[NSMutableOrderedSet alloc] init];
[newChannels addObjectsFromArray:[channelsList subscribedChannels]];
NSMutableArray<TCHChannel *> *temp = [[NSMutableArray alloc] initWithArray:[newChannels array]];
NSLog(@"channelList = %@",temp);

提前致谢。

4

2 回答 2

1

试试下面的代码

NSMutableArray<TCHChannel *> *temp = [[NSMutableArray alloc] initWithArray:[newChannels array]];
NSLog(@"channelList = %@",temp);

NSPredicate *Pred = [NSPredicate predicateWithFormat:
                          @"friendlyName == 'yourMatchString'"];
NSArray *arr = [temp filteredArrayUsingPredicate:pred];
于 2020-01-17T12:18:00.890 回答
1

尝试这个 :

NSPredicate *Pred = [NSPredicate predicateWithFormat:
                          @"TCHChannel.friendlyName == 'yourstring'"];
NSArray *arr = [temp filteredArrayUsingPredicate:pred];
于 2020-01-17T11:55:20.233 回答