Learn Python Regular Expressions step-by-step from beginner to advanced levels with hundreds of examples and exercises. The standard library re
and the third-party regex
module are covered in this book. Visit https://youtu.be/2x2n7ynamm8 for a short video about the book.
The book also includes exercises to test your understanding, which are 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 TUI app to practice most 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 can also get the book as part of these bundles:
- All books bundle bundle from https://leanpub.com/b/learnbyexample-all-books or https://learnbyexample.gumroad.com/l/all-books
- 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
- See https://learnbyexample.github.io/books/ for a 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/epub from markdown using pandoc if you are interested in the ebook creation process.
For the web version of the book, visit https://learnbyexample.github.io/py_regular_expressions/
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.
I would highly appreciate it if you'd let me know how you felt about this book. It could be anything from a simple thank you, pointing out a typo, mistakes in code snippets, which aspects of the book worked for you (or didn't!) and so on. Reader feedback is essential and especially so for self-published authors.
You can reach me via:
- Issue Manager: https://github.com/learnbyexample/py_regular_expressions/issues
- E-mail:
echo 'bGVhcm5ieWV4YW1wbGUubmV0QGdtYWlsLmNvbQo=' | base64 --decode
- Twitter: https://twitter.com/learn_byexample
- Preface
- Why is it needed?
- re introduction
- Anchors
- 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
- Lookarounds
- Flags
- Unicode
- regex module
- Gotchas
- Further Reading
- Python documentation — manuals and tutorials
- /r/learnpython/, /r/Python/ and /r/regex/ — helpful forums for beginners and experienced programmers alike
- stackoverflow — for getting answers to pertinent questions on Python and regular expressions
- tex.stackexchange — for help on pandoc and
tex
related questions - canva — cover image
- Warning and Info icons by Amada44 under public domain
- oxipng, pngquant and svgcleaner — optimizing images
- David Cortesi for helpful feedback on both the technical content and grammar issues
- Kye and gmovchan for spotting a typo
- Hugh's email exchanges helped me significantly to improve the presentation of concepts and exercises
- Christopher Patti for reviewing the book, providing feedback and brightening the day with kind words
- Users 73tada, DrBobHope, nlomb and others for feedback in this reddit thread
- mdBook — for web version of the book
- mdBook-pagetoc — for adding table of contents for each chapter
- minify-html — for minifying html files
Special thanks to Al Sweigart. His Automate the Boring Stuff book was instrumental for me to get started with Python.
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.