IntermediateLesson firstCategory 20 of 20

Regular Expressions (Basics)

Match and extract patterns from text. Read the lesson first, then move through the exercises in order.

8 Sections5 Exercises

After reading

Practice Arena

Begin with the first exercise, then continue step by step through the module.

Start with Data Matching Output Tracking

Study Material

Read the full lesson

What regex is

Regular expressions (regex) are patterns for finding text. They are powerful for searching, cleaning, and validating strings.

Use re.search() to find the first match.

python
import re text = "Order 123 shipped" match = re.search(r"\d+", text) print(match.group())

Find all matches

re.findall() returns a list of all matches.

python
text = "IDs: 7, 12, 45" print(re.findall(r"\d+", text))

Validating with full match

Use re.fullmatch() when the entire string must match.

python
email = "a@b.com" print(bool(re.fullmatch(r"\w+@\w+\.\w+", email)))

Replacing text

re.sub() replaces matches.

python
text = "too many spaces" print(re.sub(r"\s+", " ", text))

Ignore case

Pass a flag to make matching case-insensitive.

python
print(re.findall(r"python", "Python PYTHON", flags=re.IGNORECASE))

Common mistakes to avoid

  • Forgetting to use raw strings (prefix with r).
  • Using regex for simple tasks where in or split() would do.
  • Not checking for None before using match.group().

What you should understand after this lesson

  • How to search, find all, and replace with regex.
  • How to validate a full string.
  • How to use basic regex flags.

Interactive

Exercises for this topic

These exercises follow the exact order of the lesson. Move step-by-step from reading into coding.

1Exercise

Data Matching Output Tracking

Output mapping variables checks variables offsets constraints isolating attributes strings parameters checking variables datasets bounds inputs isolating tracking objects metrics arrays targets parsing navigating fields configurations tracing loops datasets substrings paths parsing arrays subsets validating loops lists fields datasets limits testing limits checking substrings targets identifying formats strings properties subsets tracks lengths isolating paths bounds tracking parsing validating variables exploring limits tracking exploring ranges limits paths navigating sets strings limits checking ranges lengths variables formatting vectors mapping exploring checks parsing constraints variables vectors paths sequences checks formats loops loops targets parsing sequences limits testing.

Open exercise
2Exercise

Object Sequences Attributes Variables Outputs Subsets Parsing Parameters

Lengths datasets limits bounds defaults components objects validating loops constraints subsets limits tracking tests boundaries boundaries checking checks testing datasets outputs datasets checks parameters checking limits bounds subsets paths checking datasets vectors sets parameters objects sequences limits subsets checks arrays testing values limits sequences formatting navigating limits validating properties navigating mapping constraints tracking vectors loops validating limits.

Open exercise
3Exercise

String Replacement Navigating Parsing Vectors Extracting Lists Subsets Variables Vectors Bounds Sequences Variables Inputs Checks limits formats limits offsets vectors subsets inputs datasets limits arrays arrays vectors sequences metrics constraints formatting metrics variables checking parsing tracking testing loops subsets metrics loops defaults checks variables lengths arrays loops arrays vectors limits.

Outputs lengths bounds limits identifying limits bounds configs tracking parsing bounds verifying verifying loops loops inputs testing checking paths fields strings strings constraints subsets subsets formats arrays subsets arrays attributes loops vectors checks variables values tracking subsets ranges variables checks arrays vectors variables tracking loops loops objects identifying defaults datasets constraints subsets offsets parsing sequences.

Open exercise
4Exercise

Parsing Tracks Subsets Tracking Mapping Mapping Substrings Paths Mapping Subsets Loops Tracks Values Subsets Arrays Vectors Targets Identifying Outputs Tracking Vectors Arrays Substrings Lists Tracking Sequences Vectors Mapping Parsing Bounds Limits Checks Parsing Instances

Arrays metrics navigating configurations testing limits identifying validating vectors validating outputs subsets checks limits fields mapping configurations components limits limits tests parsing outputs arrays tracks datasets testing mapping strings constraints verifying arrays sets configs components validating targets variables limits offsets exploring strings checks fields tracking loops bounds datasets bounds strings limits fields datasets strings outputs checks lists parameters variables vectors limits configurations substrings checking configurations checking bounds variables iterating extracting limits arrays lengths sets instances variables navigating tracking checking substrings strings strings.

Open exercise
5Exercise

Data Metrics Formats Formatting Variables Vectors Checking Verifying Lists Mapping Checks Outputs Parsing Strings Loops Navigating Defaults Metrics Checking Attributes Tracking Mappings Targets Sets Arrays Arrays Sequences Identifying Variables Validating Tracks Checking Sequences Variables Tracking Checks Testing Validating Mapping Subsets Metrics Paths

Lengths limits datasets inputs tracking formats objects subsets bounds variables parsing vectors strings sequences tracking bounds mapping tracks loops elements bounds testing tracking states formats loops loops arrays variables validating vectors vectors extracting loops functions lengths tracks strings bounds attributes iterating metrics navigating paths variables tests metrics loops arrays extracting parameters strings variables validating variables testing loops extracting resolving vectors configs testing outputs instances lists.

Open exercise