Example based guide to mastering JavaScript regexp.
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.
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:
- Awesome Regex bundle from https://learnbyexample.gumroad.com/l/regex or https://leanpub.com/b/regex
- All books bundle bundle from https://learnbyexample.gumroad.com/l/all-books
- Includes all my programming books
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/learn_js_regexp/
Open an issue if you spot any typo/errors.
I'd also highly appreciate your feedback about the book.
Twitter: https://twitter.com/learn_byexample
- Preface
- What's so special about Regular Expressions?
- RegExp 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
- Unicode
- Further Reading
- MDN: Regular Expressions — documentation and examples
- /r/learnjavascript/ and /r/regex/ — helpful forums for beginners and experienced programmers alike
- stackoverflow — for getting answers to pertinent questions on JavaScript and regular expressions
- tex.stackexchange — for help on pandoc and
tex
related questions - Cover image: LibreOffice Draw and regulex
- Warning and Info icons by Amada44 under public domain
- pngquant and svgcleaner for optimizing images
- mdBook — for web version of the book
- mdBook-pagetoc — for adding table of contents for each chapter
- minify-html — for minifying html files
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