Which characters can be used as delimiters for a Perl regular expression? m/re/, m(re) and m?re? all seem to work, but I'd like to know all possibilities.
m/re/
m(re)
m?re?
From perlop:
perlop
With the m you can use any pair of non-whitespace characters as delimiters.
So anything goes, except whitespace. The full paragraph for this is:
If "/" is the delimiter then the initial m is optional. With the m you can use any pair of non-whitespace characters as delimiters. This is particularly useful for matching path names that contain "/", to avoid LTS (leaning toothpick syndrome). If "?" is the delimiter, then the match-only-once rule of ?PATTERN? applies. If "'" is the delimiter, no interpolation is performed on the PATTERN. When using a character valid in an identifier, whitespace is required after the m.
2.1m questions
2.1m answers
60 comments
57.0k users