Our References

Regular expressions are an extremely powerful tool for manipulating text and data. They are now standard features in a wide range of languages and popular tools, including Perl, Python, Ruby, Java, VB.NET and C# (and any language using the .NET Framework), PHP, and MySQL.

If you don't use regular expressions yet, you will discover in this book a whole new world of mastery over your data. If you already use them, you'll appreciate this book's unprecedented detail and breadth of coverage. If you think you know all you need to know about regular expressions, this book is a stunning eye-opener.

As this book shows, a command of regular expressions is an invaluable skill. Regular expressions allow you to code complex and subtle text processing that you never imagined could be automated. Regular expressions can save you time and aggravation. They can be used to craft elegant solutions to a wide range of problems. Once you've mastered regular expressions, they'll become an invaluable part of your toolkit. You will wonder how you ever got by without them.

Yet despite their wide availability, flexibility, and unparalleled power, regular expressions are frequently underutilized. Yet what is power in the hands of an expert can be fraught with peril for the unwary. Mastering Regular Expressions will help you navigate the minefield to becoming an expert and help you optimize your use of regular expressions.

Mastering Regular Expressions , Third Edition, now includes a full chapter devoted to PHP and its powerful and expressive suite of regular expression functions, in addition to enhanced PHP coverage in the central "core" chapters. Furthermore, this edition has been updated throughout to reflect advances in other languages, including expanded in-depth coverage of Sun's java.util.regex package, which has emerged as the standard Java regex implementation. Topics include:

  • A comparison of features among different versions of many languages and tools
  • How the regular expression engine works
  • Optimization (major savings available here!)
  • Matching just what you want, but not what you don't want
  • Sections and chapters on individual languages

Written in the lucid, entertaining tone that makes a complex, dry topic become crystal-clear to programmers, and sprinkled with solutions to complex real-world problems, Mastering Regular Expressions, Third Edition offers a wealth information that you can put to immediate use.

Reviews of this new edition and the second edition:

  • "There isn't a better (or more useful) book available on regular expressions." -- Zak Greant, Managing Director, eZ Systems
  • "A real tour-de-force of a book which not only covers the mechanics of regexes in extraordinary detail but also talks about efficiency and the use of regexes in Perl, Java, and .NET... If you use regular expressions as part of your professional work (even if you already have a good book on whatever language you're programming in) I would strongly recommend this book to you." -- Dr. Chris Brown, Linux Format
  • "The author does an outstanding job leading the reader from regexnovice to master. The book is extremely easy to read and chock full ofuseful and relevant examples... Regular expressions are valuable toolsthat every developer should have in their toolbox. Mastering RegularExpressions is the definitive guide to the subject, and an outstandingresource that belongs on every programmer's bookshelf. Ten out of TenHorseshoes." -- Jason Menard, Java Ranch

Buy Mastering Regular Expression at

sed & awk describes two text processing programs that are mainstays of the UNIX programmer's toolbox.

sed is a "stream editor" for editing streams of text that might be too large to edit as a single file, or that might be generated on the fly as part of a larger data processing step. The most common operation done with sed is substitution, replacing one block of text with another.

awk is a complete programming language. Unlike many conventional languages, awk is "data driven" -- you specify what kind of data you are interested in and the operations to be performed when that data is found. awk does many things for you, including automatically opening and closing data files, reading records, breaking the records up into fields, and counting the records. While awk provides the features of most conventional programming languages, it also includes some unconventional features, such as extended regular expression matching and associative arrays.

sed & awk describes both programs in detail and includes a chapter of example sed and awk scripts.

This edition covers features of sed and awk that are mandated by the POSIX standard. This most notably affects awk, where POSIX standardized a new variable, CONVFMT, and new functions, toupper() and tolower().

  • The CONVFMT variable specifies the conversion format to use when converting numbers to strings (awk used to use OFMT for this purpose).
  • The toupper() and tolower() functions each take a (presumably mixed case) string argument and return a new version of the string with all letters translated to the corresponding case.

In addition, this edition covers GNU sed, newly available since the first edition. It also updates the first edition coverage of Bell Labs nawk and GNU awk (gawk), covers mawk, an additional freely available implementation of awk, and briefly discusses three commercial versions of awk, MKS awk, Thompson Automation awk (tawk), and Videosoft (VSAwk).

Sed & Awk (2nd edition) at

UNIVERSAL 2ND FACTOR The YubiKey NEO is the strong authentication bullseye the industry has been aiming at for years, enabling one single key to secure an unlimited number of applications. And all it takes to generate trusted credentials is a single touch on the YubiKey.

In a single device, The Yubikey NEO has both contact (USB) and contactless (NFC, MIFARE) communications. It uniquely supports One-Time Passcodes, smart card functionality, including OpenPGP and PIV, and the emerging FIDO Alliance Universal 2nd Factor (U2F) protocol. The YubiKey NEO can be configured for U2F and other modes using the NEO Manager.

FIDO U2F breaks the mold for high security public key hardware devices, removing the complexity of drivers, clients software and the traditional costly CA model. With FIDO U2F, one single YubiKey NEO or NEO-n can be used with any number of online services, with no user information and encryption keys shared between the service providers. In the near future, large scale online services will support FIDO U2F, enabling users to own and control their single and secure online identity for any number of services. Please note, current U2F standards do not support NFC for mobile devices. For more information, you can access the full U2F Specifications on the FIDO Alliance website.

Buy YubiKey NEO at

Are you concerned about losing account information by password theft, phishing, hacking or keylogging scams? Now there is less to worry about. The FIDO U2F Security Key by Yubico is a specially designed YubiKey, relying on high-security, public-key cryptography. Durable and conveniently sized, just slide it out of its protective sleeve, insert it into any USB port and it works with any website that supports the FIDO U2F protocol. And all it takes is a simple touch of a button! Find out more at

Buy FIDO U2F Security Key at