O'Reilly logo

Perl Pocket Reference, 5th Edition by Johan Vromans

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Search and Replace Functions

[ expr =~ ] [ m ] /pattern/ [ modifiers ]

Searches expr (default $_) for a pattern.

For =~, its negation !~ may be used, which is true when =~ would return false, and vice versa.

After a successful match, the following special variables are set:

$&

The string that matched.

$`

The string preceding what was matched.

$'

The string following what was matched.

$1

The first parenthesized subexpression that matched, $2 the second, and so on.

$+

The last subexpression that matched.

@-

The start offsets of the match and submatches.

@+

The corresponding end offsets.

%+

Named subpatterns that matched.

%-

All named subpatterns.

If used in list context, a list is returned consisting of the subexpressions matched by the parentheses in pattern, i.e., ($1,$2,$3, . . . ).

Optional modifiers include adilmopsux, as described in the previous section. Additional modifiers are:

c

(with g) prepares for continuation.

g

matches as many times as possible.

If pattern is empty, the most recent pattern from a previous successful m// or s/// is used.

With g, the match in scalar context can be used as an iterator. The iterator is reset upon failure, unless c is also supplied.

[ expr =~ ] m?pattern? [ modifiers ]

This is just like the /pattern/ search, except that it matches only once between calls to the reset operator.

[ $var =~ ] s/pattern/newtext/ [ modifiers ]

Searches the string var (default $_) for a pattern, and if found, replaces that part with the replacement text.

If successful, sets the special variables ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required