正则表达式在IOS开发中的应用
正则表达式在字符串查找,替换,检测中的应用非常广泛,正则表达式是什么,有怎样的语法,我的另一篇博客中有详细的介绍。这里只简单说一下其概念,正则表达式是一种语法小巧简单的语言,用来约束一些过滤字符串条的条件。很多开发工具都有支持正则表达式的内容,IOS也不例外,在IOS中NSRegularExpression类就是一个专门来处理正则表达式的类。
一、初始化方法
初始化NSRegularExpression的方法有两种,一个init方法和一个类方法。其作用基本是一样的
+ (NSRegularExpression *)regularExpressionWithPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options error:(NSError **)error;
- (instancetype)initWithPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options error:(NSError **)error
其中,pattern是正则表达式,options是参数。对于option参数,它是一个枚举,表示正则模式的设置,如下:
1
2
3
4
5
6
7
8
9
|
typedef
NS_OPTIONS(NSUInteger,NSRegularExpressionOptions){
NSRegularExpressionCaseInsensitive=1<<0,
//不区分字母大小写的模式
NSRegularExpressionAllowCommentsAndWhitespace=1<<1,
//忽略掉正则表达式中的空格和#号之后的字符
NSRegularExpressionAnchorsMatchLines=1<<4,
//允许^和$符号匹配行的开头和结尾
NSRegularExpressionUseUnixLineSeparators=1<<5,
//设置\n为唯一的行分隔符,否则所有的都有效。
NSRegularExpressionUseUnicodeWordBoundaries=1<<6
//使用UnicodeTR#29标准作为词的边界,否则所有传统正则表达式的词边界都有效
};
|