美文网首页
2019-10-11

2019-10-11

作者: 灌水iOS | 来源:发表于2021-05-19 18:17 被阅读0次

/**
*获取需要处理的子字符串和子串的range
*/
-(NSArray<NSTextCheckingResult *> *)getBBSLetterSubStrRangeArrWithStr:(NSString *)str{
//[...]表情
//@"\[[a-zA-Z\u4e00-\u9fa5]+\]"
NSString *emopattern=@"\[[\u4e00-\u9fa5\w]+\]" ;
//#...#话题
//@"#[0-9a-zA-Z\u4e00-\u9fa5]+#"
// @"#[\u4e00-\u9fa5\w\s]+#";
NSString *toppattern = @"#[^#]+#";
//@...@
//@"@[0-9a-zA-Z\U4e00-\u9fa5]+"
NSString atpattern = @"@[\u4e00-\u9fa5\w]+";
//url
//@"http://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]
[-a-zA-Z0-9+&@#/%=~_|]"
NSString *urlpattern = @"\b(([\w-]+://?|www[.])[\s()<>]+(?:\([\w\d]+\)|([[:punct:]\s]|/)))";
NSString *pattern = [NSString stringWithFormat:@"%@|%@|%@|%@",emopattern,toppattern,atpattern,urlpattern];
NSRegularExpression *regular = [[NSRegularExpression alloc] initWithPattern:pattern options:NSRegularExpressionCaseInsensitive error:nil];
NSArray *results = [regular matchesInString:str options:0 range:NSMakeRange(0, str.length)];

return results;

}

相关文章

网友评论

      本文标题:2019-10-11

      本文链接:https://www.haomeiwen.com/subject/qulxmctx.html