Learning Regular Expressions

SKU: 9780134757063

$34.99 Regular Price

$26.24Sale Price

Quantity

Learn to use one of the most powerful text processing and manipulation tools available
Regular expression experts have long been armed with an incredibly powerful tool, one that can be used to perform all sorts of sophisticated text processing and manipulation in just about every language and on every platform. That’s the good news. The bad news is that for too long, regular expressions have been the exclusive property of only the most tech savvy. Until now.
Ben Forta's Learning Regular Expressions teaches you the regular expressions that you really need to know, starting with simple text matches and working up to more complex topics, including the use of backreferences, conditional evaluation, and look-ahead processing. You’ll learn what you can use, and you’ll learn it methodically, systematically, and simply.
Regular expressions are nowhere near as complex as they appear to be at first glance. All it takes is a clear understanding of the problem being solved and how to leverage regular expressions to solve them.

Read and understand regular expressions

Use literal text and metacharacters to build powerful search patterns

Take advantage of advanced regular expression features, including lookahead and backreferences

Perform powerful search-and-replace operations in all major professional editing tools

Add sophisticated form and text processing to web applications

Search for files using command-line tools like grep and egrep

Use regular expressions in programming languages like JavaScript, Java, PHP, Python, Microsoft .NET, and C#, as well as in DBMSs including MySQL and Oracle

Contents at a Glance
1 Introducing Regular Expressions2 Matching Single Characters3 Matching Sets of Characters4 Using Metacharacters5 Repeating Matches6 Position Matching7 Using Subexpressions8 Using Backreferences9 Looking Ahead and Behind10 Embedding Conditions11 Regular Expression Solutions to Common Problems
Appendix A Regular Expressions in Popular Applications and Languages

Ben Forta has three decades of experience in the computer industry in product design and development, support, training, and marketing. As Adobe Inc.’s Senior Director of Education Initiatives, he spends a considerable amount of time teaching, talking, and writing about Adobe products, coding and application development, creativity, and digital literacy and provides feedback to help shape the future direction of Adobe products.

Ben is the author of more than 40 books, including the world’s bestselling title on SQL, as well as titles on topics as diverse as Regular Expressions, mobile development, and Adobe ColdFusion. More than 750,000 copies of his books are in print in English, and titles have been translated into fifteen languages. Many of these titles are used as textbooks in colleges and universities worldwide.

Education is Ben’s passion. Between writing, lecturing, and in-classroom experience, Ben has dedicated his professional and personal lives to teaching, inspiring, and sharing his love for technology and creativity. He is immensely grateful to have had the opportunity to share with millions worldwide.

Ben is also a successful entrepreneur with experience creating, building, and selling start-ups. He is a sought-after public speaker, a writer, and a blogger, and he presents on education and development topics worldwide.

Introduction 1

Chapter 1 Introducing Regular Expressions 3

Understanding the Need 3

How Regular Expressions Are Used 4

RegEx Searches 4

RegEx Replaces 5

So What Exactly Is a Regular Expression? 5

Using Regular Expressions 6

Before You Get Started 7

Summary 7

Chapter 2 Matching Single Characters 9

Matching Literal Text 9

How Many Matches? 10

Handling Case Sensitivity 10

Matching Any Characters 11

Matching Special Characters 14

Summary 16

Chapter 3 Matching Sets of Characters 17

Matching One of Several Characters 17

Using Character Set Ranges 20

“Anything But” Matching 23

Summary 24

Chapter 4 Using Metacharacters 25

Escaping Revisited 25

Matching Whitespace Characters 28

Matching Specific Character Types 29

Matching Digits (and Nondigits) 29

Matching Alphanumeric Characters (and Nonalphanumeric Characters) 31

Matching Whitespace (and Nonwhitespace) 32

Specifying Hexadecimal or Octal Values 32

Using POSIX Character Classes 33

Summary 35

Chapter 5 Repeating Matches 37

How Many Matches? 37

Matching One or More Characters 38

Matching Zero or More Characters 40

Matching Zero or One Characters 42

Using Intervals 44

Exact Interval Matching 44

Range Interval Matching 45

“At Least” Interval Matching 46

Preventing Over Matching 48

Summary 49

Chapter 6 Position Matching 51

Using Boundaries 51

Using Word Boundaries 52

Defining String Boundaries 54

Using Multiline Mode 57

Summary 58

Chapter 7 Using Subexpressions 59

Understanding Subexpressions 59

Grouping with Subexpressions 60

Nesting Subexpressions 63

Summary 66

Chapter 8 Using Backreferences 67

Understanding Backreferences 67

Matching with Backreferences 70

Performing Replace Operations 73

Converting Case 75

Summary 76

Chapter 9 Looking Ahead and Behind 77

Introducing Lookaround 77

Looking Ahead 78

Looking Behind 80

Combining Lookahead and Lookbehind 82

Negating Lookaround 83

Summary 85

Chapter 10 Embedding Conditions 87

Why Embed Conditions? 87

Using Conditions 88

Backreference Conditions 88

Lookaround Conditions 90

Summary 92

Chapter 11 Regular Expression Solutions to Common Problems 93

North American Phone Numbers 93

U.S. ZIP Codes 95

Canadian Postal Codes 95

United Kingdom Postcodes 96

U.S. Social Security Numbers 97

IP Addresses 98

URLs 98

Complete URLs 99

Email Addresses 100

HTML Comments 101

JavaScript Comments 102

Credit Card Numbers 103

Summary 107

Appendix A Regular Expressions in Popular Applications and Languages 109