如何检查 NSDictionary 中字符串的前缀?

Posted

技术标签:

【中文标题】如何检查 NSDictionary 中字符串的前缀?【英文标题】:How to check prefix of string inside an NSDictionary? 【发布时间】:2017-06-02 11:30:08 【问题描述】:

广告数据包含:

Advertisement data 
    kCBAdvDataIsConnectable = 1;
    kCBAdvDataLocalName = "Ali \n";
    kCBAdvDataServiceUUIDs =     (
        "43200-B827-EB74-0E24-192168001107"
    );
    
if(advertisementData[@"kCBAdvDataServiceUUIDs"] hasPrefix:@"432")
    NSLog("It contains this string");
    

当我执行代码时,它给了我错误: 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[CBUUID hasPrefix:]: unrecognized selector sent to instance 0x170034260”。

【问题讨论】:

最好使用CBAdvertisementDataServiceUUIDsKey 而不是@"kCBAdvDataServiceUUIDs"?否则,错误“无法识别的选择器发送到实例”是经典的,从消息的其余部分来看,这意味着 advertisementData[@"kCBAdvDataServiceUUIDs"]CBUUID 对象,而不是 NSString 对象。 【参考方案1】:

kCBAdvDataServiceUUIDs 是一个CBUUID。使用uuidString 获取字符串。

【讨论】:

以上是关于如何检查 NSDictionary 中字符串的前缀?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中检查字符串以(前缀)开头或以(后缀)结尾

如何检查 NSDictionary 中的值是不是存在于字典数组中

如何检查字符串是不是以多个前缀之一开头?

如何获取列表中字符串的公共前缀[重复]

如何检查字符串是不是包含数组中的任何元素[关闭]

在检查比特币块时,为什么一旦找到正确的随机数就会得到一个前导零的前缀?