0
我需要從NSString中刪除所有emojs。 到目前爲止,我用這NSString的擴展...如何從NSString中刪除所有emojs
- (NSString*)noEmoticon {
static NSMutableCharacterSet *emoij = NULL;
if (emoij == NULL) {
emoij = [[NSMutableCharacterSet alloc] init];
// unicode range of old emoijs
[emoij removeCharactersInRange:NSMakeRange(0xE000, 0xE537 - 0xE000)];
}
NSRange range = [self rangeOfCharacterFromSet:emoij];
if (range.length == 0) {
return self;
}
NSMutableString *cleanedString = [self mutableCopy];
while (range.length > 0) {
[cleanedString deleteCharactersInRange:range];
range = [cleanedString rangeOfCharacterFromSet:emoij];
}
return cleanedString;
}
...但是,這並不在所有的工作。 range.length始終是0. 所以一般的問題是:我如何從NSString中刪除一系列的unicode字符?
非常感謝。