第八课:零次或多次,一次或多次

正则表达式中一个非常重要的概念是匹配字符出现的次数。例如,假设您需要匹配一个数字输入框,用户可能输入任意长度的数字,比如“15”或者“15000”,数字长度不固定。

为了表达这种金额格式,正则表达式中有两个非常重要的量词:Kleene StarKleene Plus。它们分别表示前面的字符或字符组出现的次数范围。 Kleene Star(*)表示字符可以出现 零次或多次,也就是说这个字符可以不存在,也可以出现很多次; Kleene Plus(+)表示字符至少出现 一次或多次,也就是说字符至少要出现一次。 例如,要匹配任意数量的数字,您可以使用 \d*,这表示数字可以出现零次或多次;但如果想确保输入至少有一个数字,则应使用更严格的 \d+

这两个量词可以与任何字符或特殊元字符结合使用,例如: a+ 表示一个或多个字母 a, [abc]+ 表示由字母 a、b 或 c 组成的一个或多个字符, .* 表示任意字符出现零次或多次。

下面是一些简单的字符串,您可以使用星号和加号这两个元字符来进行匹配练习。

练习八:零次或多次,一次或多次

任务 文本
解决上述问题后,即可继续下一个题目,或 查看答案