דילוג לתוכן המרכזי
eLearner.app
מודול 2 · שיעור 1 מתוך 45/32 בקורס~10 min
שיעורי מודול (1/4)

`*`, `+`, `?`

Quantifiers tell the engine how many times to repeat the element that precedes them. The three basic quantifiers are *, +, ?.

QuantifierMeaningExampleMatches
*zero or more timesba*b, ba, baa
+one or more timesba+ba, baa
?zero or one timescolou?rcolor, colour

They apply to the last atom: a single character (a+), a class (\d+), a group ((ab)+, module 4).

Code
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

פעילות גופנית#regex.m2.l1.e1
ניסיונות: 0טוען...

Find every sequence of one or more consecutive lowercase 'a's in the text.

טוען עורך...
הצג רמז

Use the + quantifier (one or more).

הפתרון זמין לאחר 3 ניסיונות

Review exercise

פעילות גופנית#regex.m2.l1.e2
ניסיונות: 0טוען...

Find every integer, with an optional minus sign (e.g. `42`, `-3`, `0`). Use `?` for the optional minus and `+` for the digits.

טוען עורך...
הצג רמז

Prefix -? to the digit class, so the minus sign is either present or absent.

הפתרון זמין לאחר 3 ניסיונות

Additional challenge

פעילות גופנית#regex.m2.l1.e3
ניסיונות: 0טוען...

Find both `color` and `colour` in the text using the optional quantifier `?`.

טוען עורך...
הצג רמז

Place the ? after the letter u to indicate it can appear zero or one times.

הפתרון זמין לאחר 3 ניסיונות