One of the most difficult things when working with regular expressoins -- at least for me -- is dealing with different implementations (i.e., Perl, Java, Python, PHP, UNIX tools, etc.) The basics of regexes and pattern matching don't vary all that much, but each implementation is just different enough that the smae line of code can yield different results. If you work with more than one of these implementations, keeping track of differences in metacharacters and metasequences can be nearly impossible. This is especially true when -- as is the case with me -- you deal with regexes somewhat intermittently.
This is one of the main reasons why the "Regular Expression Pocket Reference"
was written and this is why I keep it close at hand. This book will not really teach you how to use regexes, nor will it tell you how to use, say, Perl. If, however, you use Perl and you know how to use regexes but just can't remember whether you can disallow backtracking for text matched by a subpattern, then this book will save you quite a bit of time and effort.
If you're wondering what it means to "disallow backtracking for text matched by a subpattern," or when you would want to use it, buy "Mastering Regular Expressions" or a similar title. The "Regular Expression Pocket Reference" is designed to be a quick reference tool, and it serves this purpose very well. I would recommend it especially for those who work with regular expressions intermittently or who work with several different implementations.