iOS学习----------正则表达式
来源:互联网 发布:ismo软件 编辑:程序博客网 时间:2024/06/10 10:28
首先使用系统的方法
1、匹配手机号
//匹配电话
NSString*phone = @"13562646222";
NSRegularExpression*regexPhone = [NSRegularExpressionregularExpressionWithPattern:@"1[358]\\d{9}$"options:NSRegularExpressionCaseInsensitiveerror:nil];
NSArray*matcher = [regex matchesInString:stroptions:NSMatchingReportCompletionrange:NSMakeRange(0, str.length)];
2、匹配 数组中保存的时匹配结果 可能有多个匹配结果
NSString*qqStr = @"234234243";
//匹配qq
NSRegularExpression *regexQQ = [NSRegularExpressionregularExpressionWithPattern:@"[0-9]{5-6}"options:NSRegularExpressionCaseInsensitiveerror:nil];
NSArray *matcherQQ = [regexQQ matchesInString:qqStroptions:NSMatchingReportCompletionrange:NSMakeRange(0, qqStr.length)];
if (matcherQQ.count&& qqStr) {
NSLog(@"");
} else {
NSLog(@"");
//匹配qq
NSRegularExpression *regexQQ = [NSRegularExpressionregularExpressionWithPattern:@"[0-9]{5-6}"options:NSRegularExpressionCaseInsensitiveerror:nil];
NSArray *matcherQQ = [regexQQ matchesInString:qqStroptions:NSMatchingReportCompletionrange:NSMakeRange(0, qqStr.length)];
if (matcherQQ.count&& qqStr) {
NSLog(@"");
} else {
NSLog(@"");
}
3、匹配文字和表情
/*
? 0或者1个
* 0或者多个
+ 1个或者多个
*/
NSString*text = @"aasdfadsf[马到成功]asdfadsf";
NSRegularExpression *regexText = [NSRegularExpressionregularExpressionWithPattern:@"\\[[a-zA-Z0-9\\u4e00-\\u9fa5]+\\]"options:NSRegularExpressionCaseInsensitiveerror:nil];
NSArray *matcherText = [regexText matchesInString:textoptions:NSMatchingReportCompletionrange:NSMakeRange(0, text.length)];
if (matcherText.count) {
for (NSTextCheckingResult*resultin matcherText) {
NSLog(@"%@---%@",NSStringFromRange(result.range),[textsubstringWithRange:result.range]);
}
} else {
NSLog(@"匹配失败");
? 0或者1个
* 0或者多个
+ 1个或者多个
*/
NSString*text = @"aasdfadsf[马到成功]asdfadsf";
NSRegularExpression *regexText = [NSRegularExpressionregularExpressionWithPattern:@"\\[[a-zA-Z0-9\\u4e00-\\u9fa5]+\\]"options:NSRegularExpressionCaseInsensitiveerror:nil];
NSArray *matcherText = [regexText matchesInString:textoptions:NSMatchingReportCompletionrange:NSMakeRange(0, text.length)];
if (matcherText.count) {
for (NSTextCheckingResult*resultin matcherText) {
NSLog(@"%@---%@",NSStringFromRange(result.range),[textsubstringWithRange:result.range]);
}
} else {
NSLog(@"匹配失败");
}
4、第三方的正则匹配 需要导入libicucore.dylib 框架
并修改为 -fno-objc-arc
NSString *str = @"asdffdfaddf[asd]adsfsdf[asdf]a";
NSString *regex = @"\\[[a-zA-Z0-9\\u4e00-\\u9fa5]+\\]";
//匹配方法
[str enumerateStringsMatchedByRegex:regexusingBlock:^(NSIntegercaptureCount,NSString *const__unsafe_unretained*capturedStrings, const NSRange *capturedRanges, volatile BOOL *conststop) {
NSLog(@"%@ %@",*capturedStrings,NSStringFromRange(*capturedRanges));
}];
//将正则匹配出来的字符串作为切割符
[str enumerateStringsSeparatedByRegex:regexusingBlock:^(NSIntegercaptureCount,NSString *const__unsafe_unretained*capturedStrings, const NSRange *capturedRanges, volatile BOOL *conststop) {
NSLog(@"%@ %@",*capturedStrings,NSStringFromRange(*capturedRanges));
}];
0 0
- iOS--正则表达式
- 正则表达式--iOS开发
- iOS开发-正则表达式的使用方法
- iOS开发-正则表达式的使用方法
- iOS开发-正则表达式的使用方法
- 黑马程序员-学习-正则表达式
- Javascript-正则表达式
- 正则表达式-入门
- 正则表达式-分组
- 正则表达式-反义
- 正则表达式-图片链接
- iOS学习----------正则表达式
- iOS开发学习之 - 正则表达式在IOS中的应用
- iOS开发笔记--正则表达式NSRegularExpression
- iOS--正则表达式--略可借鉴。
- 正则表达式-元字符
- 正则表达式-转义字符
- 正则表达式-重复匹配
- 在windows操作系统中使用linux
- ArrayAdapter<T>,Filter实现列表搜索
- Python GUI编程各种实现的对比
- xp下使用thrift
- 关于CLR、CIL、CTS、CLS、CLI、BCL和FCL。
- iOS学习----------正则表达式
- Java中声明常量为什么用static修饰
- 27个提升效率的iOS开源库推荐
- 黑马程序员----java基础面向对象特点及封装
- 引子
- 第 3 章 自定义数据库表结构
- 【PHP】PHP中__get()和__set()的用法实例详解
- OGG_Manager 进程
- 编译器括号检查原理(C)