1-(BOOL) Iscontainsemoji: (NSString *)string {2__block BOOL Iseomji =NO;3[stringEnumeratesubstringsinrange:nsmakerange (0, [stringlength]) Options:nsstringenumerationbycomposedcharactersequences Usingblock:4^ (NSString *substring, Nsrange substringrange, Nsrange enclosingrange, BOOL *stop) {5 ConstUnichar HS = [substring Characteratindex:0];6 if(0xd800<= HS && HS <=0XDBFF) {7 if(Substring.length >1) {8 ConstUnichar ls = [substring characteratindex:1];9 Const intUC = (HS-0xd800) *0x400) + (LS-0xdc00) +0x10000;Ten if(0x1d000<= UC && UC <=0x1f77f) { OneIseomji =YES; A } - } -}Else if(Substring.length >1) { the ConstUnichar ls = [substring characteratindex:1]; - if(ls = =0x20e3|| ls = =0xfe0f) { -Iseomji =YES; - } +}Else { - if(0x2100<= HS && HS <=0x27ff&& HS! =0x263b) { +Iseomji =YES; A}Else if(0x2b05<= HS && HS <=0x2b07) { atIseomji =YES; -}Else if(0x2934<= HS && HS <=0x2935) { -Iseomji =YES; -}Else if(0x3297<= HS && HS <=0x3299) { -Iseomji =YES; -}Else if(HS = =0xa9|| HS = =0xae|| HS = =0x303d|| HS = =0x3030|| HS = =0x2b55|| HS = =0x2b1c|| HS = =0x2b1b|| HS = =0x2b50|| HS = =0x231a ) { inIseomji =YES; - } to } + }]; - returnIseomji; the}
iOS determines whether a string contains emoji characters