03. Repetitions and Optionals

Reiterating a single regex expression

If we want to reiterate a single regex expression, we can do so with braces ({}). Within the braces we can specify up to two numbers, separated by a comma.

{n}
Match preceding element (if it occurs) exactly n times.
{n,m}
at least n times, but no more than m times.
{n,}
n or more times.
{,m}
no more than m times.

Here are some concrete examples:

.{4,}
Match any character 4 or more times.
\d{5,10}
Match any digit between 5 and 10 times.
Matching zero or many elements

To match an element zero or many times, use the Kleene star, which is an asterisk (*) placed after a specific character.

Match at least one element

To match a previous element at least once, use the Kleene plus (+). This is a tighter regulation than the Kleene star, as it ensures there is at least one of the preceding character.

Optional

To match an element zero or just one time, use the question mark (?). To match an actual question mark, escape it. (\?).

\d*
Match zero or many digits.
[a-z]+
Match one or many lowercase alphabet letters.
[abc]?
Match the characters a, b or c zero or just once.

Conditionals

You can use conditionals to specify either-or relations. Use the logical or (|) between two options.

(cats|dogs)
Selects either cats or dogs.

Ace your Technical Interview

Programming Interviews: Exposed

Ace your Technical Interview Try Algorithms

In today's tight job market, competition for programming jobs is hotter than ever. This third edition of a popular guide to programming interviews includes new code examples, information on the latest languages, new chapters on sorting and design patterns, tips on using LinkedIn, and a downloadable app to help prepare applicants for the interview.

$ Check price
29.9929.99Amazon 4.5 logo(94+ reviews)

More Algorithms resources

Take your Linux skills to the next level!

System Admin Handbook

Take your Linux skills to the next level! Try Linux & UNIX

This book approaches system administration in a practical way and is an invaluable reference for both new administrators and experienced professionals. It details best practices for every facet of system administration, including storage management, network design and administration, email, web hosting, scripting, and much more.

$ Check price
74.9974.99Amazon 4.5 logo(142+ reviews)

More Linux & UNIX resources

Ad