📜  正则表达式量词 - Javascript (1)

📅  最后修改于: 2023-12-03 15:26:52.444000             🧑  作者: Mango

正则表达式量词 - Javascript

在正则表达式中,量词用于指定一个模式出现的次数。在Javascript中,我们可以使用以下量词:

  • *:匹配前面的模式零次或多次;
  • +:匹配前面的模式一次或多次;
  • ?:匹配前面的模式零次或一次;
  • {n}:匹配前面的模式恰好n次;
  • {n,}:匹配前面的模式至少n次;
  • {n,m}:匹配前面的模式至少n次,但不超过m次。

以下是一些使用正则表达式量词的例子:

匹配零个或多个数字
const regex = /\d*/;
console.log(regex.test("")); // true
console.log(regex.test("123")); // true
console.log(regex.test("abc")); // true
console.log(regex.test("1a2b3c")); // true

在上面的例子中,\d 匹配数字,* 表示前面的模式(也就是 \d)可以出现零次或多次,因此这个正则表达式匹配任何包含零个或多个数字的字符串。

匹配一个以上字母
const regex = /[a-z]+/;
console.log(regex.test("ab")); // true
console.log(regex.test("aB")); // true
console.log(regex.test("123")); // false

在这个例子中, [a-z] 匹配任何小写字母, + 表示前面的模式(也就是 [a-z])可以出现一次或多次。

匹配一个或零个单词
const regex = /\w?/;
console.log(regex.test("hello")); // true
console.log(regex.test("")); // true
console.log(regex.test("123")); // true
console.log(regex.test("!@$")); // false

在这个例子中,\w匹配任何字母、数字或下划线,?表示前面的模式(也就是\w)可以出现零次或一次。

匹配不超过三个数字
const regex = /\d{1,3}/;
console.log(regex.test("123")); // true
console.log(regex.test("12")); // true
console.log(regex.test("1")); // true
console.log(regex.test("1234")); // true
console.log(regex.test("a12")); // true
console.log(regex.test("abc")); // false

在这个例子中,\d 匹配数字,{1,3} 表示前面的模式(也就是 \d)可以出现一到三次。

以上是一些使用正则表达式量词的例子。熟练掌握正则表达式量词,可以帮助程序员更高效地对字符串进行匹配和操作。