- Build Yor Own X - This repository is a compilation of well-written, step-by-step guides for re-creating our favorite technologies from scratch. "Master programming by recreating your favorite technologies from scratch.⭐️
-
Zeal Docs - Zeal software is an offline documentation browser for software developers.
Window, Linux and Mac
-
DevDocs - DevDocs combines multiple API documentations in a fast, organized, and searchable interface. It contains mostly every language documentation at one place. And allow offline documentation download feature for selected languages ⭐
Website based so can also use in mobile
- RegexLearn / RegexOne ⭐️ - Step by step guide
- regex101 / RegExr - Best for visualizing/testing ⭐️
- Awesome Regex - Collection of libraries/tools/frameworks
- CS50's lecture on regex / Regular Expressions in py4e
- Regex Crossword - Game
- Python Regular Expressions - Learn by examples
- Learn regex the easy way - Beginner guide ⭐️
Guides on YouTube
- All the Basics - by Luke Smith
- How to Match Any Pattern of Text - by Corey Schafer
- Everything You Know About Regexes Is Wrong - by Damian Conway
Tips
- It's a means to an end. Don't waste too much time studying it
- Usage is the best study
- Don't parse HTML with regex
- Avoid using regex to validate emails
- Best regex to match any email:
(?:[a-z0-9!#$%&'*+/=?^
{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_
{|}~-]+)|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\[\x01-\x09\x0b\x0c\x0e-\x7f])_")@(?:(?:a-z0-9?.)+a-z0-9?|[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])
Books
- Introducing Regular Expressions
- Mastering Regular Expressions
- Regular Expressions Cookbook
- Regular Expression Pocket Reference
- Awesome Regex
- Computing from the Command Line - by Sundeep Aggarwal.