跳转到主要内容
模块 2 · 第 1 课(共 4)课程中的5/32~10 min
模块课程(1/4)

`*`、`+`、`?`

量词告诉引擎重复该元素多少次 在他们之前。三个基本量词是 *、+、?。

量词意义示例比赛
*零次或多次次ba*b、ba、baa
+一次或多次次ba+ba、baa
?零次或一次次colou?rcolor、colour

它们适用于最后一个原子:单个字符(a+),一个类 (\d+),一个组((ab)+,模块 4)。

Code
Pattern: \d+
Sample:  Codici 7, 12 e 314.
                ^  ^^    ^^^

\d+ 匹配“一个或多个数字”,它不会停在第一个数字: 连续数字的最大序列。

深入研究可选量词

问号 ? 仅适用于紧邻其前面的单个字符。要使整个字符或单词序列成为可选,必须将它们括在括号中,例如 (https)?。

尝试一下

锻炼#regex.m2.l1.e1
尝试:0加载中...

查找文本中一个或多个连续小写“a”的每个序列。

正在加载编辑器...
显示提示

使用 + 量词(一个或多个)。

3 次尝试后可用的解决方案

复习练习

锻炼#regex.m2.l1.e2
尝试:0加载中...

查找每个带有可选减号的整数(例如“42”、“-3”、“0”)。使用“?”作为可选的减号,使用“+”作为数字。

正在加载编辑器...
显示提示

前缀-?到数字类别,因此减号要么存在,要么不存在。

3 次尝试后可用的解决方案

额外的挑战

锻炼#regex.m2.l1.e3
尝试:0加载中...

使用可选量词“?”在文本中查找“color”和“color”。

正在加载编辑器...
显示提示

放置 ?在字母 u 之后表示它可以出现零次或一次。

3 次尝试后可用的解决方案