Lecții din modul (1/4)
`*`, `+`, `?`
Quantifiers tell the engine how many times to repeat the element that
precedes them. The three basic quantifiers are *, +, ?.
| Quantifier | Meaning | Example | Matches |
|---|---|---|---|
* | zero or more times | ba* | b, ba, baa |
+ | one or more times | ba+ | ba, baa |
? | zero or one times | colou?r | color, colour |
They apply to the last atom: a single character (a+), a class
(\d+), a group ((ab)+, module 4).
Pattern: \d+
Sample: Codici 7, 12 e 314.
^ ^^ ^^^\d+ matches "one or more digits", it does not stop at the first one: a
maximal sequence of consecutive digits.
Deep dive into the optional quantifier
The question mark ? applies only to the single character immediately preceding it. To make an entire sequence of characters or words optional, you must enclose them in parentheses, for example (https)?.
Try it
Find every sequence of one or more consecutive lowercase 'a's in the text.
Afișează indiciu
Use the + quantifier (one or more).
Soluție disponibilă după 3 încercări
Review exercise
Find every integer, with an optional minus sign (e.g. `42`, `-3`, `0`). Use `?` for the optional minus and `+` for the digits.
Afișează indiciu
Prefix -? to the digit class, so the minus sign is either present or absent.
Soluție disponibilă după 3 încercări
Additional challenge
Find both `color` and `colour` in the text using the optional quantifier `?`.
Afișează indiciu
Place the ? after the letter u to indicate it can appear zero or one times.
Soluție disponibilă după 3 încercări