A Gentle Introduction to Regular Expressions (Regex)
Regex looks like keyboard smashing, but it is just a pattern language for finding text. Learn the seven symbols that cover most everyday uses.
Regular expressions — regex for short — have a scary reputation. Something like ^\d{3}-\d{4}$ looks like a cat walked across a keyboard. But regex is nothing more than a compact language for describing text patterns, and learning a handful of symbols unlocks most of its everyday power.
What regex is for
Regex answers one question: "does this text match this pattern?" With it you can find every email address in a document, check whether a phone number is formatted correctly, extract all the prices from a messy report, or clean up text in ways ordinary find-and-replace cannot.
If you have ever thought "I need to find all the things that look like X" — that is a regex job.
The seven symbols that do most of the work
.— matches any single character.c.tmatches "cat", "cot", and "cut".*— the previous thing, repeated zero or more times.lo*ngmatches "lng", "long", "looong".+— the previous thing, one or more times.\d+means "one or more digits" — that is how you match numbers of any length.\d— any digit, 0–9. Similarly\wis any letter, digit, or underscore, and\sis any whitespace.[abc]— any one character from the set.[aeiou]matches any vowel;[0-9a-f]matches hex characters.^and$— the start and end of the text.^Helloonly matches text that begins with Hello.{3}— exactly three of the previous thing.\d{4}is exactly four digits — a year, maybe.
Read ^\d{3}-\d{4}$ again with this table: start, three digits, a dash, four digits, end. It is a 555-1234 style phone pattern. Not so scary anymore.
Learn by poking at it
Regex clicks fastest when you experiment live. Open the Regex Tester, type a pattern, paste some sample text, and watch matches highlight in real time as you edit. Break it, fix it, break it again — two minutes of playing teaches more than an hour of reading.
Start with this exercise: paste a paragraph containing a few email addresses and try \w+@\w+\.\w+. Watch it grab the emails. Then figure out why it misses "first.last@company.co.uk" — and welcome to the regex learning loop that every developer knows.
Real tasks regex handles well
- Validation. Does this input look like a postal code, a phone number, an order ID? One pattern per format.
- Extraction. Pull every URL, email, or #hashtag out of a pile of text.
- Cleanup. Find double spaces, trailing whitespace, or repeated words. (For simple cases, the Remove Extra Spaces tool does it without any regex.)
- Search in code editors. Nearly every editor supports regex in find-and-replace — this is where regex pays off even for non-programmers.
Honest advice about regex limits
Regex is brilliant for patterns and miserable for meaning. Validating that an email "looks like" an email is easy; guaranteeing it is a real, deliverable address is impossible with regex alone. And famously, regex is the wrong tool for parsing HTML — the moment you need to understand nested structure, reach for a real parser instead.
Also: complex regex becomes unreadable fast. If your pattern grows past one line, add comments or split the job into steps. Future-you will be grateful.
Your first week with regex
Day one: play with \d+, \w+, and . in the Regex Tester. Day two: anchor things with ^ and $. Day three: try find-and-replace with regex in your text editor. Within a week, "find all the things that look like X" becomes a thirty-second task — and that skill quietly compounds for the rest of your career.

