正则表达式
以下是对正则表达式学习的一些整理。
头部尾部
^ 表示开始 后接字符串 ^one
$ 表示结束 前接字符串 dog$
“banana” 必须包含此字符串
限制个数
* 0个或更多个 ab* (a,ab,abbb…)
+ 1个或更多个 ab+ (ab, abbb…)
? 0个或1个 ab? (a, ab)
{4} 4个 ab{4} (abbbb)
{1,} 至少1个 ab{1,} (ab, abbb…)
{3,4} 3个到4个 ab{3,4} (abbb, abbbb)
注:必须有下限,ab{,5}是错误的
或
| 表示或 (a|b)e (ae, be)
字符范围
[a-z] 所有小写字母
[0-9] 数字
. 任意字符
连续字符
\4 连续有4个字符 (.)\4 连续4个相同字符
{1,2} 连续1个或者2个字符 10{1,2} (10,100)
{3,} 连续3个以上字符 0{3,} (000,0000)
不希望出现的字符
^ 后接不希望出现的字符 @[^a-zA-Z]@ 两个@之前不能有字母
其他
\d 匹配一个数字字符 等价于[0-9]
\D 匹配一个非数字字符 等价于[^0-9]
\w 匹配包括下划线的任何单词字符 等价于[A-Za-z0-9]
\W 匹配任何非单词字符 等价于[^A-Za-z0-9]
转义字符处理
碰到转义字符 多加一个 \
正则表达式与NSPredicate连用
1 | - (BOOL)validateNumber:(NSString *)textString { |
NSString方法
1 | NSString *searchText = @"rangeOfString"; |
正则表达式类(NSRegularExpression)
1 | NSString *searchText = @"you want to match"; |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.