正则表达式-元字符的边界元字符与限定元字符


一、内容

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

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值