Other Sellers on Amazon
+ Free Shipping
+ $3.99 shipping
+ Free Shipping
Mastering Regular Expressions Paperback – August 18, 2006
|New from||Used from|
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
What other items do customers buy after viewing this item?
Customers who bought this item also bought
About the Author
Jeffrey Friedl was raised in the countryside of Rootstown, Ohio, and had aspirations of being an astronomer until one day he noticed a TRS-80 Model I sitting unused in the corner of the chem lab (bristling with a full 16K of RAM, no less). He eventually began using Unix (and regular expressions) in 1980, and earned degrees in Computer Science from Kent (BS) and the University of New Hampshire (MS). He did kernel development for Omron Corporation in Kyoto, Japan for eight years before moving in 1997 to Silicon Valley to apply his regular-expression know-how to financial news and data for a little-known company called "Yahoo!"
When faced with the daunting task of filling his copious free time, Jeffrey enjoys playing Ultimate Frisbee and basketball with friends at Yahoo!, programming his house, and feeding the squirrels and jays in his back yard. He also enjoys spending time with his wife Fumie, and preparing for the Fall 2002 release of their first "software project" together.
There was a problem filtering reviews right now. Please try again later.
This book gave me the level of understanding I was looking for. After reading this book I can confidently say that I'm 1000% more comfortable reading and creating my own regex. I stopped once I reached chapter 7 because the last chapters, 7-10 are language specific chapters, but in the future I'll definitely refer back to those chapters once I'm working with those languages.
Lastly, I did get some flak from other devs while I was reading this book "Geez you're reading a book on regex?? wow that's too boring for me." etc. etc. Don't listen to the haters! If you want a greater understanding of regex, and this book can get you there then don't listen to those nerds. At the end of the day and with learning anything, it only matters that the nerd in your shoes understands the subject. Also, take your time reading the book. It's perfectly fine to pace yourself and take more time reading, because there's a lot of needed detail.
My only complaint is the fonts. Both the text of the book and the source code. The font used for the regular text is very light, I would have preferred a larger, darker, and more bold font. The font used for the source code is absolutely horrible. There are little angle brackets used to identify a block (for example to highlight what has changed from the prior example). They are almost impossible to see. This is important because the author is constantly referring to the highlighted portions. Some pages are darker print than others, its inconsistent.
If another edition of this book is ever made, I would like to see larger more bold font, and use a completely different method to "highlight" portions of text in the code samples.
I wonder if this font issues occur in the Kindle edition...?
I took this on work travel when I got it, and read it on the plan. The tips for working your way through interpreting regular expressions are very good, and easier to understand than the expressions themselves.
It is NOT language specific, so you need to deal for yourself, with differences between say, how Python does it, and how Perl does it.
This should probably be in most programmers' libraries.
By not asserting himself as a mathematical authority, Friedl lets his cleverness come through in a practical, 'human-to-human' way. There are a few moments when the more theoretically minded reader might want a little more detail, but the balance Friedl keeps is beyond admirable.
In the entire book there are perhaps only a half-dozen pages that are 'challenging' to the mind, yet by the time the reader has finished the book he or she will be amazed, simply amazed, at the complexity of regular expressions that can be interpretted with ease. Of course, writing expressions takes more practice, but the regex muscles won't even notice the feather-light daily tasks of, say, basic data validation after working out on this text.
The book will start the reader looking for possible regex solutions everywhere, and provides enough detail to take the fear out of using them.
Top international reviews
So. The following applies to the *paperback* book.
In practice Freidl's book is primarily a programmer's reference. But like the best references (eg the C Programming Language) is formatted as a tutorial.
Introductory chapters establish a need for regexs, giving a brief history and presenting some straightforward use cases.
Thereafter Mr Freidl wades deeper into the waters of obscurity, and we are soon dealing with the minutiae of mode modifiers and greedy versus lazy quantifiers.
Some of this stuff goes rather deeper than I have ever needed to go. For example, opening the book at random to page 245, I read the subheadings 'Pre-check of required character/substring optimization' and 'Length-cognizance optimization'. Not of immediate use to me, but I am glad to know where I can find this if ever (heaven forfend) the performance of my application depends on the construction of regexs.
But this is nit-picking. I dare say it is possible to resolve any regex difficulty with a little applied Googling; but to have this book on your shelf is to know that you have an articulate, clear and complete explanation close to hand.
Would recommend this for any programmer who does not already know regular expressions or that needs to get a thorough understanding. As long as you use strings you will be able to draw some benefit.
As for me, I wonder how I ever managed without!
Even though I already knew quite a bit about this topic, this is still one of the very best technical books I've ever read (and I don't give five stars easily). No light reading at all, though. But the writing style of Jeffrey helps a lot to make things interesting and approachable. At the same time he succeeds to think razor-sharp, not forgetting corner cases. Sometimes it's almost frightening how he remembers to check and point out all possibilities. And again, all this without becoming repetitive, boring or anything the like.
The 31-page index is quite complete and definitely useful and the hundreds of cross references in the text are a boon. I'd have appreciated a few more tables or, better yet, an appendix with the existing tables all collected once more in one place for easy reference. But then, this book is not a reference, it is a book from which you can learn the ins and outs of regular expressions. And it does a very good job teaching this, starting out with an introduction to regular expressions and simple examples. A complete regex beginner might stop reading after the first one or two chapters, get his or her hands dirty with regexes for a while and then continue reading after a few months of using regular expressions. Some more complex samples follow and then an overview of regular expression features and flavours. For casual users the difference between DFA and NFA engines might not be so important, but the more you use regular expressions and the more complex things you start to solve with them, the more such differences become apparent. When you start to apply your knowledge to larger amounts of data, suddenly knowing about efficiency, which has its own chapter, or the mechanics of processing (another chapter) makes a huge difference. Need to handle unicode? Yes, Jeffrey has this covered too, just as regex use in various scripting languages, such as Java, .NET, PHP, Perl, Python, Tcl. Four of them, Perl, Java, .NET and PHP, even have their own chapters (which I did not read all).
If you want to learn about regular expressions, I can not imagine a better or more complete book to turn to. And if you're just curious about regexes, then read the first one or two chapters and start being impressed by how much simpler many data manipulation tasks suddenly become. You'll definitely pull out this book again from your bookshelf and continue reading after some time.
Friedl exposes the internals of the most common Regex engine implementations.
Whether you apply Regexes now and then, are a sysadmin, or are ramping up on work that demands Regex smarts, you will benefit greatly from this book.
Scopri un mondo affascinante e comune a molte problematiche.
migliorabile ampliando e strutturando gli esempi da un punto di vista di piu' pronto uso.