iOS 过滤Emoji表情
2017-07-22 本文已影响248人
我是不是叫没烦恼
.h内容
#import <Foundation/Foundation.h>
@interface NSString (CheckFormat)
- (NSString *)noEmoji;
@end
.m 内容
#import "NSString+CheckFormat.h"
@implementation NSString (CheckFormat)
- (NSString *)noEmoji {
//去除表情规则
// \u0020-\\u007E 标点符号,大小写字母,数字
// \u00A0-\\u00BE 特殊标点 (¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾)
// \u2E80-\\uA4CF 繁简中文,日文,韩文 彝族文字
// \uF900-\\uFAFF 部分汉字
// \uFE30-\\uFE4F 特殊标点(︴︵︶︷︸︹)
// \uFF00-\\uFFEF 日文 (オカキクケコサ)
// \u2000-\\u201f 特殊字符(‐‑‒–—―‖‗‘’‚‛“”„‟)
// 注:对照表 http://blog.csdn.net/hherima/article/details/9045765
NSRegularExpression* expression = [NSRegularExpression regularExpressionWithPattern:@"[^\\u0020-\\u007E\\u00A0-\\u00BE\\u2E80-\\uA4CF\\uF900-\\uFAFF\\uFE30-\\uFE4F\\uFF00-\\uFFEF\\u2000-\\u201f\r\n]" options:NSRegularExpressionCaseInsensitive error:nil];
NSString* result = [expression stringByReplacingMatchesInString:self options:0 range:NSMakeRange(0, self.length) withTemplate:@""];
return result;
}
@end