Learn Python Regular Expressions step by step from beginner to advanced levels with hundreds of examples and exercises
The book also includes exercises to test your understanding, which is presented together as a single file in this repo — Exercises.md
For solutions to the exercises, see Exercise_solutions.md.
You can also use this interactive GUI app to practice a subset of the exercises from the book.
See Version_changes.md to keep track of changes made to the book.
- You can purchase the pdf/epub versions of the book using these links
- You might find reduced price using this coupon: https://leanpub.com/py_regex/c/P7erPYAm1386
- You can also get the book as part of these bundles:
The Indie Python Extravaganza bundle from https://leanpub.com/b/theindiepythonextravaganza
- Includes Python 101, Pydon'ts, Python re(gex)?, Practice Python Projects and Clean Architectures in Python
Learn by example Python bundle from https://leanpub.com/b/python-bundle or https://learnbyexample.gumroad.com/l/python-bundle
Awesome Regex bundle from https://leanpub.com/b/regex or https://learnbyexample.gumroad.com/l/regex
All books bundle bundle from https://learnbyexample.gumroad.com/l/all-books
- Includes all my programming books
Python 101 + Python re(gex)? or Python 201: Intermediate Python + Python re(gex)?
- See https://learnbyexample.github.io/books/ for list of other books
For a preview of the book, see sample chapters
The book can also be viewed as a single markdown file in this repo. See my blogpost on generating pdf from markdown using pandoc if you are interested in the ebook creation process.
For web version of the book, visit https://learnbyexample.github.io/pyregularexpressions/
I love your books on regex...As a student from the Digital VLSI space, it is indeed useful now and definitely in the future. It's really well written and really easy to understand the examples.
— feedback on reddit
Feedback and Contributing
Open an issue if you spot any typo/errors.
:warning: :warning: Please DO NOT submit pull requests. Main reason being any modification requires changes in multiple places.
I'd also highly appreciate your feedback about the book.
Table of Contents
- Why is it needed?
- re introduction
- Alternation and Grouping
- Escaping metacharacters
- Dot metacharacter and Quantifiers
- Interlude: Tools for debugging and visualization
- Working with matched portions
- Character class
- Groupings and backreferences
- Interlude: Common tasks
- regex module
- Further Reading
Special thanks to Al Sweigart, for introducing me to Python with his awesome automatetheboringstuff book and video course.
The book is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
The code snippets are licensed under MIT, see LICENSE file