正则表达式的作用
分割: split 匹配: matcher 替换: replace 搜索: find search
1、\d
-----> 一个数字
2、\D
-----> 一个非数字
3、\w
-----> 一个字母0-9 a-z
4、\W
----->一个非字母
5、.
任意一个字符
6、?
1.修饰符 修饰前一个正则出现的次数为0~1次
比如\W\d?\W
能匹配 $4% 能匹配 @* 不能匹配 &56#
2.模式选择(贪婪模式|非贪婪模式)
7、+
修饰符 修饰前一个正则出现的次数为1~N次
能匹配1 2 不能匹配3
8、*
修饰符 修饰前一个正则出现的次数为0~N次
同上图 1 2 3 都能匹配
9、[]
字符选择器
[0-9] 在指定范围中任意取一个字符
[a-z][A-Z]
[0-9a-zA-Z] 其实是[0-9|a-z|A-Z] 但是正则表达式中“|”(或者)可以不写
如上图 只有 $ 匹配不上
例子:写个正则表达式 用来匹配10-20的整数
1[0-9]|20
10、()
1.字符串匹配器 在字符串中任选一个字符串
2.分组
同[]不过用来匹配的是字符串 而不是字符 上图除了3 都能匹配
11、{}
范围选择器(数量个数选择器) 修饰符 修饰前一个正则出现x次
如上图{}用来修饰前面\W
的次数 表示最少1次 最多三次
所以上图只有2 3 4能匹配
{3,}
表示最少三次 最多无限次
{5}
表示只能5次
没有{,5}
这种写法
12、\
转义字符
用来转义特殊字符 比如[
{
(
]
}
)
避免他们与正则符号冲突
13、^
1.取非(一般多用于中括号中)
如上图 红框内的都不能匹配
2.从左向右匹
14、$
从右向左匹
15、^()$
边界界定符 你的字符串与正则完整匹配
图1
图2
如果只想匹配三个字符的字符串 那么必须用到边界界定符