一、内容
1.边界元字符
(1).^匹配输入字符串的开始位置。
(2).$匹配输入字符串的结束位置。
2.限定元字符
(1)* 匹配前面的子表达式零次或多次。
(2)+ 匹配前面的子表达式一次或多次。
(3)? 匹配前面的子表达式零次或一次。
(4){n} n是一个非负整数。匹配确定的 n 次。
(5){n,} n是一个非负整数。至少匹配n 次。
->{0,}等价于*
->{1,}等价于+
(6){n,m}m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。
->{0,1}等价于?
二、使用步骤
(结果都在每行的后面注释中)
1.边界元字符
(1). ^ 表示你的字符串需要有一个数字开头
const reg1 = /^\d/;
console.log(reg1.test('asddsa')); //false
console.log(reg1.test('asd45132dsa')); //false
console.log(reg1.test('2asddsa')); //true
console.log('---------------------------');
(2)$ 表示字符串以一个数字结尾
console.log(reg2.test('dsa52das')); //false
console.log(reg2.test('dsadas45')); //true
console.log(reg2.test('55dsadas')); //false
//表示字符串以一个空格结束
const reg3 = /\s$/;
console.log(reg3.test('dsa das')); //false
console.log(reg3.test(' dsadas')); //false
console.log(reg3.test('dsadas ')); //true
(3) ^ $ 表示字符串开头和结尾只能由一个数字组成
const reg4 = /^\d$/;
console.log(reg4.test('1')); //true
console.log(reg4.test('12')); //false
console.log(reg4.test('4523')); //false
2.限定元字符
(结果都在每行的后面注释中)
(1)* 匹配前面的子表达式零次或多次。
//表示字符串里面需要出现一个0~多次数字组成的片段
const reg1 = /\d*/;
console.log(reg1.test('48653asddsad5@@__')); //true
//表示字符串只能由0~多个数字组成
const reg2=/^\d+$/;
console.log(reg2.test('48653asddsad5@@__')); //false
console.log(reg2.test('123456')); //true
console.log(reg2.test('48653@@__')); //false
(2)+ 表示字符串只能由1~多个数字组成
const reg3 = /^\d+$/;
console.log(reg3.test('aaaa')); //false
console.log(reg3.test('123aaa456')); //false
console.log(reg3.test(' ')); //false
console.log(reg3.test('123456')); //true
(3)? 表示字符串必须由0个或者一个数字组成
const reg4 = /^\d?$/;
console.log(reg4.test('1')); //true
console.log(reg4.test('aaaaaa')); //false
console.log(reg4.test('aaaaaa4')); //false
console.log(reg4.test('4sdad5')); //false
console.log(reg4.test(' ')); //false
console.log(reg4.test('')); //true
(4){n} 表示字符串必须有3个数字组成
const reg5 = /^\d{3}$/;
console.log(reg5.test('444')); //true
console.log(reg5.test('aaa')); //fasle
console.log(reg5.test('bb4')); //false
(5){n,}表示n-多次,表示你的字符串只能由4个或者四个以上的数字组成
const reg6 = /^\d{4,}$/;
console.log(reg6.test('1234')); //ture
console.log(reg6.test('12345')); //true
console.log(reg6.test('a12345')); //false
(6){n,m}表示n-m次,表示你的字符串只能由n-m个数字组成
const reg7 = /^\d{4,7}$/;
console.log(reg7.test('1234567')); //true
console.log(reg7.test('1234')); //true
console.log(reg7.test('a12345')); //false