How to use different separators (/ , |) in a regular expression

In Perl, in the substitution operator, as well as many other operators, you can substitute the delimiter for almost any punctuation character, such as

s#/$##
s=/$==
s!/$!!

Which one to use when is a matter of what you need at the time. Preferably you choose a delimiter that does not conflict with the characters in your regex, and one that is readable.

In your case, a different delimiter from / was used because one wanted to include a slash in the regex, to remove a trailing slash. With the default delimiters, it would have been:

s/\/$//

Which is not as easy to read.

Like I mentioned above, you can do this with a great many operators and functions:

m#...#
qw/.../
qw#...#
tr;...;;
qq?...?

Leave a Comment