摘要:在本教程中,您将学习使用量词匹配字符串中的多个字符、组或字符类实例。
量词指定了在输入字符串中必须出现多少个字符、组或字符类实例,才能找到匹配项。
数量
确切数量 {n}
花括号中的数字{n}是最简单的量词。当您将其附加到字符或字符类时,它指定您要匹配的字符或字符类的数量。
例如,正则表达式/\d{4}/匹配一个四位数字。它与/\d\d\d\d/相同
let str = 'ECMAScript 2020';
let re = /\d{4}/;
let result = str.match(re);
console.log(result);Code language: JavaScript (javascript)输出
['2020', index: 11, input: 'ECMAScript 2020', groups: undefined]Code language: JavaScript (javascript)范围 {n,m}
该范围匹配n到m次之间的字符或字符类。
例如,要查找具有两位数、三位数或四位数的数字,可以使用正则表达式/\d{2,4}/g
let str = 'The official name of ES11 is ES2020';
let re = /\d{2,4}/g;
let result = str.match(re);
console.log(result);
Code language: JavaScript (javascript)输出
["11", "2020"]Code language: JavaScript (javascript)因为上限是可选的,所以{n,}搜索n次或更多次的序列。例如,正则表达式/\d{2,}/将匹配任何具有两位数或更多位数的数字。
let str = 'The official name of ES6 is ES2015';
let re = /\d{2,}/g;
let result = str.match(re);
console.log(result);
Code language: JavaScript (javascript)输出
["2015"]Code language: JavaScript (javascript)以下示例使用正则表达式/\d{1,}/g匹配电话号码中具有一个或多个数字的任何数字
let numbers = '+1-(408)-555-0105'.match(/\d{1,}/g);
console.log(numbers);Code language: JavaScript (javascript)输出
["1", "408", "555", "0105"]
Code language: JavaScript (javascript)简写
+
量词{1,}表示一个或多个,其简写为+。例如,\d+搜索数字
let phone = "+1-(408)-555-0105";
let result = phone.match(/\d+/g);
console.log(result);
Code language: JavaScript (javascript)输出
["1", "408", "555", "0105"]Code language: JavaScript (javascript)?
量词?表示零或一。它与{0,1}相同。例如,/colou?r/将匹配color和colour
let str = 'Is this color or colour?';
let result = str.match(/colou?r/g);
console.log(result);Code language: JavaScript (javascript)输出
["color", "colour"]Code language: JavaScript (javascript)*
量词*表示零或多个。它与{0,}相同。以下示例显示如何使用量词*匹配字符串Java后跟任何单词字符
let str = 'JavaScript is not Java';
let re = /Java\w*/g
let results = str.match(re);
console.log(results);
Code language: JavaScript (javascript)输出
["JavaScript", "Java"]
Code language: JavaScript (javascript)我们经常使用量词来形成复杂的正则表达式。以下是包含量词的正则表达式示例
- 整数:
/^\d+$/ - 小数:
/^\d*.\d+$/ - 整数和小数:
/^\d*(.\d+)?$/ - 负数、正数整数和十进制数:
/^-?\d*(.\d+)?$/
摘要
下表列出了量词
| 量词 | 描述 |
|---|---|
* | 匹配零次或多次。 |
+ | 匹配一次或多次。 |
? | 匹配零次或一次。 |
{ n } | 正好匹配 n 次。 |
{ n ,} | 至少匹配 n 次。 |
{ n , m } | 从 n 到 m 次之间匹配。 |
本教程对您有帮助吗?