1、正则的两大特性:
● 正则表达式有两种特性:懒惰性和贪婪性
● 懒惰性:exec()捕获,只能捕获第一个符合正则的内容,使用第二次还是会从头开始捕获,永远捕获不到第二个及以后满足正则的内容。可以加上一个全局标识符g来解决。
● 贪婪性:
<script>
var reg = /\d{3,5}/
console.log(reg.exec("cd55025csd"))
</script>
结果:
解释说明: /\d{3,5}/配合exec含义是:捕获3-5个数字,但是结果是'55025',直接就捕获了5个数字,这就是它的贪婪性说明,它只要捕获3个数字就符合条件了,但是它捕获了5个。贪婪性说明了exec会捕获在满足条件的情况下捕获尽可能多的内容。
● 非贪婪性:
只要我们加一个“?”就能解决贪婪的问题
<script>
var reg = /\d{3,5}?/
console.log(reg.exec("cd55025csd"))
</script>
结果: