• Stars
    star
    1,747
  • Rank 26,477 (Top 0.6 %)
  • Language
    Python
  • License
    MIT License
  • Created over 5 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Learn Python Regular Expressions step by step from beginner to advanced levels

Understanding Python re(gex)?

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.

Understanding Python re(gex)? ebook cover image

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 TUI app to practice most of the exercises from the book.

See Version_changes.md to keep track of changes made to the book.


E-book

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/py_regular_expressions/


Testimonials

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

⚠ī¸ ⚠ī¸ Please DO NOT submit pull requests. Main reason being any modification requires changes in multiple places.

I would highly appreciate 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:


Table of Contents

  1. Preface
  2. Why is it needed?
  3. re introduction
  4. Anchors
  5. Alternation and Grouping
  6. Escaping metacharacters
  7. Dot metacharacter and Quantifiers
  8. Interlude: Tools for debugging and visualization
  9. Working with matched portions
  10. Character class
  11. Groupings and backreferences
  12. Interlude: Common tasks
  13. Lookarounds
  14. Flags
  15. Unicode
  16. regex module
  17. Gotchas
  18. Further Reading

Acknowledgements

Special thanks to Al Sweigart. His Automate the Boring Stuff book was instrumental for me to get started with Python.


License

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

More Repositories

1

Command-line-text-processing

⚡ From finding text to search and replace, from sorting to beautifying text and more 🎨
Shell
10,173
star
2

scripting_course

📓 Books, reference guides and resources on Regular Expressions, CLI one-liners, Scripting Languages and Vim.
Vim Script
1,364
star
3

learn_gnuawk

Example based guide to mastering GNU awk
Shell
1,068
star
4

TUI-apps

Terminal User Interface (TUI) apps
Python
592
star
5

Python_Basics

🐍 Syntax, working with Shell commands, Files, Text Processing, and more...
Python
552
star
6

cli-computing

🐧 Linux command line and Scripting guide for beginner to intermediate users
Shell
529
star
7

vim_reference

:q Vim reference guide for beginner to intermediate users
323
star
8

learn_gnugrep_ripgrep

Example based guide to mastering GNU grep and ripgrep
Shell
317
star
9

practice_python_projects

Book on basic to intermediate level Python projects
Python
313
star
10

100_page_python_intro

🐍 Short, introductory guide for the Python programming language 📗 ⚡
Python
220
star
11

curated_resources

📚 Curated lists for programming, books, movies, music, games, etc
201
star
12

cli_text_processing_coreutils

Example based guide for specialized text processing with GNU Coreutils
Shell
188
star
13

learn_gnused

Example based guide to mastering GNU sed
Shell
184
star
14

learn_ruby_oneliners

Example based guide for text processing with Ruby from the command line
Shell
173
star
15

py_resources

Collection of Python learning resources
166
star
16

learnbyexample.github.io

My super duper awesome programming blog
HTML
132
star
17

learn_js_regexp

Learn JavaScript Regular Expressions step-by-step from beginner to advanced levels with hundreds of examples and exercises.
JavaScript
111
star
18

learn_perl_oneliners

Example based guide for text processing with Perl from the command line
Shell
103
star
19

Ruby_Regexp

Learn Ruby Regexp step-by-step from beginner to advanced levels with plenty of examples and exercises.
Ruby
99
star
20

command_help

ℹī¸ Extract help text from builtin commands and man pages
Shell
94
star
21

Ruby_Scripting

examples based tutorial for Ruby scripting
Ruby
68
star
22

Perl_intro

đŸĒ Introductory course for Perl 5 through examples, geared towards VLSI engineers
Perl
44
star
23

ThinkRubyBuild

Forked from https://github.com/AllenDowney/ThinkPython2
TeX
32
star
24

cli_text_processing_rust

Command line text processing with Rust tools
20
star
25

regexp-cut

Use awk to provide cut like syntax for field extraction
Shell
16
star
26

learnbyexample

15
star
27

tpyo_revealo

🙈 assistant for hunting down tpyos
Python
13
star
28

squaretictactoe

🎮 Tic Tac Toe reimagined
Java
7
star
29

escapist-reviews

Lists, reviews and other thoughts about fictional books I read
1
star