Ruby Regexp
Learn Ruby Regexp step by step from beginner to advanced levels with 200+ examples
The book also includes exercises to test your understanding, which is presented together as a single file in this repo - Exercises.md
See Version_changes.md to keep track of changes made to the book.
E-book
- You can download the book from any of these links for free (you can also pay if you wish)
- You can also get the book as bundles:
- Awesome Regex bundle from https://leanpub.com/b/regex or https://gumroad.com/l/regex
- (Python|Ruby) regex bundle from https://leanpub.com/b/pythonrubyregex
- See https://learnbyexample.github.io/books/ for list of other books
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.
Feedback
Please open an issue if you spot any typo/errors.
I'd also highly appreciate your feedback about the book.
Goodreads: https://www.goodreads.com/book/show/48641238-ruby-regexp
Twitter: https://twitter.com/learn_byexample
Table of Contents
- Preface
- Why is it needed?
- Regexp literal and operators
- Anchors
- Alternation and Grouping
- Escaping metacharacters
- Dot metacharacter and Quantifiers
- Working with matched portions
- Character class
- Groupings and backreferences
- Lookarounds
- Modifiers
- String Encoding
- Miscellaneous
- Gotchas
- Further Reading
Acknowledgements
- ruby-lang documentation — manuals and tutorials
- /r/ruby/ — helpful forum for beginners and experienced programmers alike
- stackoverflow — for getting answers to pertinent questions on Ruby and regular expressions
- tex.stackexchange — for help on
pandoc
andtex
related questions - Cover image:
- Warning and Info icons by Amada44 under public domain
- softwareengineering.stackexchange and skolakoda for programming quotes
Special thanks to Allen Downey, an attempt at translating his book Think Python to Think Ruby gave me the confidence to publish my own book.
Contributing
- Open an issue for suggestions, bugs, typos, etc
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