Chapter 8

Regular Expressions

WHAT YOU WILL LEARN IN THIS CHAPTER:

  • Understanding basic regular expression matching
  • Understanding substitutions, lookahead/lookbehind anchors and named subexpressions.
  • Creating useful regular expression modules

WROX.COM CODE DOWNLOADS FOR THIS CHAPTER

The wrox.com code downloads for this chapter are found at http://www.wrox.com/remtitle.cgi?isbn=1118013847 on the Download Code I’ve replaced the tabs in the following code with spaces. Please review. The code for this chapter is divided into the following major examples:

  • example_8_1_name_and_age.pl
  • example_8_2_dates_pl
  • listing_8_1_data_structure.pl
  • listing 8_2_composed_regexes.pl

Sometimes instead of exactly matching text, you want to find some text that looks like something you’re expecting. This is where Perl’s regular expressions come in.

A regular expression is a pattern that describes what your text should look like. Regular expressions can get complex, but most of the time they’re straightforward when you understand the syntax. Regular expressions are often called regexes. (A single regular expression is sometimes called a regex or worse, a regexp).

An entire book can be (and has been) written on this topic. This chapter focuses on those aspects of regular expressions you’re most likely to encounter.

BASIC MATCHING

Say you have a list of strings and want to print all strings containing the letters cat because, like your author, you love cats.

my @words = ( 'laphroaig', 'house cat', 'catastrophe', ...

Get Beginning Perl now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.