Chapter 2: Matching and Substitution in Perl
Introduction > Binding Operator > Regular Expressions >
Examples > Substitution > Advanced Ideas
The Binding Operator
When you do a pattern match, you need three things:
-
the text you are searching through
-
the pattern you are looking for
-
a way of linking the pattern with the searched text
As a simple example, let's say you want to see whether a string variable has the value of "success". Here's how you could write the problem in Perl:
$word = "success";
if ( $word =~ m/success/ ) {
print "Found success\n";
} else {
print "Did not find success\n";
}
There are two things to note here.
First, the "=~" construct, called the binding operator, is what binds the string being searched with the pattern that specifies the search. The binding operator links these two together and causes the search to take place.
Next, the "m/success/" construct is the matching operator, m//, in action. The "m" stands for matching to make it easy to remember. The slash characters here are the "delimiters". They surround the specified pattern. In m/success/, the matching operator is looking for a match of the letter sequence: success.
Generally, the value of the matching statement returns 1 if there was a match, and 0 if there wasn't. In this example, the pattern matches so the returned value is 1, which is a true value for the if statement, so the string "Found success\n" is printed.
Next Page
____
Questions? Feedback?
Email me your
comments!
Like the course?
Please rate the site here
Copyright 2003-2007 Michael Gossland and
Associates. All rights reserved.
|