我目前正在 iOS 上开发自定义 NSTextStorage,我需要检测一些主题标签 (#)、提及和 url...此时一切正常,但如果用户尝试从键盘输入表情符号字符,则不会显示,因为我使用的是 Helvetica 字体。
我正在使用常规表达式以这种方式检测主题标签、提及和网址:
NSRegularExpression *iExpression = [NSRegularExpression regularExpressionWithPattern:pattern
options:0
error:NULL];
NSRange paragraphRange = [self.string paragraphRangeForRange: self.editedRange];
[iExpression enumerateMatchesInString:self.string
options:0
range:paragraphRange
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop)
{
// Changing format of match
}
哪里pattern
是查找主题标签、网址或提及的有效正则表达式模式。
是否有一些模式来检测表情符号字符?我应该使用什么模式,我已经尝试过这个(和许多其他的)[^\\x{1F601}-\\x{1F64F}\r\n]
但没有成功。
谢谢。