美文网首页
iOS判断字符串是否含有emoj表情

iOS判断字符串是否含有emoj表情

作者: solayu | 来源:发表于2018-07-05 10:20 被阅读0次
    
    
    //判断是否有emoji
    -(BOOL)stringContainsEmoji:(NSString *)string
    {
        __block BOOL returnValue = NO;
        
        [string enumerateSubstringsInRange:NSMakeRange(0, [string length])
                                   options:NSStringEnumerationByComposedCharacterSequences
                                usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {
                                    const unichar high = [substring characterAtIndex: 0];
                                    
                                    // Surrogate pair (U+1D000-1F9FF)
                                    if (0xD800 <= high && high <= 0xDBFF) {
                                        const unichar low = [substring characterAtIndex: 1];
                                        const int codepoint = ((high - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000;
                                        
                                        if (0x1D000 <= codepoint && codepoint <= 0x1F9FF){
                                            returnValue = YES;
                                        }
                                        
                                        // Not surrogate pair (U+2100-27BF)
                                    } else {
                                        if (0x2100 <= high && high <= 0x27BF){
                                            returnValue = YES;
                                        }
                                    }
                                }];
        
        return returnValue;
    }
    
    
    
    

    相关文章

      网友评论

          本文标题:iOS判断字符串是否含有emoj表情

          本文链接:https://www.haomeiwen.com/subject/znbuuftx.html