1.什么是正则表达式
2.正则表达式的特点
- 灵活性,逻辑性和功能性非常的强
- 可以迅速第用极简单的方式达到字符串的复杂控制。
3.创建正则表达式
在JavaScript中,可以通过两种方式创建一个正则表达式。
4.测试正则表达式 test
5.正则表达式的组成
边界符
正则表达式中的边界符(位置符)用来提示字符所处的位置,主要有两个字符
边界符 | 说明 |
---|---|
^ | 表示匹配行首的文本(以谁开始) |
$ | 表示匹配行尾的文本(以谁结束) |
如果^和$在一起,表示必须是精确匹配
正则表达式里面不需要加引号
字符类
- .字符类表示有一系列字符可供选择,只要匹配其中一个就可以了。所有可供选择的字符都放在方括号内
例:
var rg =/[abc]/; //只要包含a或者b或者c都返回为true
var rg1 = /^[abc]$/;//三选一 只有是a或者b或者c 这三个字母才返回 true
- [-] 方括号内部范围符 -
例:
var reg = /^[a-z]$/;// 26个英文小写字母任何一个字母返回 true
var reg = /^[a-zA-Z]$/;// 26个英文小写和大写字母任何一个字母返回 true
- 如果中括号里面有 ^ 表示取反的意思 千万别和我们边界符 ^ 混淆
var reg = /^[^a-zA-Z0-9-_]$/;// 不能包含这些字符
量词符
量词符用来设定某个模式出现的次数
量词 | 说明 |
---|---|
* | 重复零次或更多次 |
+ | 重复一次或更多次 |
? | 重复零次或一次 |
{n} | 重复n次 |
{n,} | 重复n次或更多次 |
n,m | 重复n次或m次 |
var reg = /^[a-zA-Z0-9-_]{6,16}$/;//
注意:中间不要有空格
括号总结
- 中括号 字符集合.匹配方括号中的任意字符
var reg = /^[abc$/;// a也可以 b 也可以 c也可以
- 大括号 量词符. 里面表示重复次数
var reg = /^abc{3}$/;// 他只是让c重复三次 abccc
- 小括号 表示优先级
预定义类
6.replace 替换
案例:
7.正则表达式参数
例子
例1:^
var reg = /^abc/;
console.log(reg.test('abc') //true
console.log(reg.test('abcd') //true
console.log(reg.test('aabcd') //false
必须以abc开头
例2:$
var reg = /^abc$/;
console.log(reg.test('abc') //true
console.log(reg.test('abcd') //false
console.log(reg.test('abcabc') //false
精准匹配 要求必须是abc字符串菜符合规范