new RegExp(/^\d(\d{0,3})?$/)
时间: 2024-10-13 21:10:03 浏览: 17
正则表达式的语法-Javascript3-内置对象
新的正则表达式 `new RegExp(/^\d(\d{0,3})?$/)` 的作用是在字符串开始匹配一个数字 (`^\d`),接着可以有零个到三个连续的数字(`\d{0,3}`),这部分是可选的 (`?` 表示非贪婪模式)。如果想要展示这个正则的工作原理,我们可以通过以下方式:
```javascript
let regex = new RegExp(/^\d(\d{0,3})?$/);
console.log(regex.test('123')); // true - 匹配单个数字
console.log(regex.test('12345')); // true - 匹配四位数字
console.log(regex.test('123456')); // true - 区分大小写,匹配六位数字
console.log(regex.test('12')); // true - 匹配两位数字
console.log(regex.test('1234')); // false - 因为中间没有三位数
```
在这个正则表达式中,`(\d{0,3})?` 是一个非捕获组,表示前面的三位数字可以出现0次到1次。
阅读全文