iOS 判断字符串含有表情

-(BOOL)isContainsEmoji:(NSString *)string {

   __blockBOOL isEomji =NO;

    [string enumerateSubstringsInRange:NSMakeRange(0, [stringlength])options:NSStringEnumerationByComposedCharacterSequencesusingBlock:

     ^(NSString *substring,NSRange substringRange,NSRange enclosingRange,BOOL *stop) {

        constunichar hs = [substringcharacterAtIndex:0];

        if (0xd800 <= hs && hs <=0xdbff) {

            if (substring.length >1) {

                constunichar ls = [substringcharacterAtIndex:1];

                constint uc = ((hs -0xd800) *0x400) + (ls -0xdc00) +0x10000;

                if (0x1d000 <= uc && uc <=0x1f77f) {

                     isEomji =YES;

                 }

             }

         }elseif (substring.length >1) {

            constunichar ls = [substringcharacterAtIndex:1];

            if (ls ==0x20e3) {

                 isEomji =YES;

             }

         }else {

            if (0x2100 <= hs && hs <=0x27ff && hs !=0x263b) {

                 isEomji =YES;

             }elseif (0x2B05 <= hs && hs <=0x2b07) {

                 isEomji =YES;

             }elseif (0x2934 <= hs && hs <=0x2935) {

                 isEomji =YES;

             }elseif (0x3297 <= hs && hs <=0x3299) {

                 isEomji =YES;

             }elseif (hs ==0xa9 || hs ==0xae || hs ==0x303d || hs ==0x3030 || hs ==0x2b55 || hs ==0x2b1c || hs ==0x2b1b || hs ==0x2b50|| hs ==0x231a ) {

                 isEomji =YES;

             }

         }

     }];

   return isEomji;

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值