Jump to content

Perl Programming/Keywords/quotemeta

From Wikibooks, open books for an open world
Previous: qr Keywords Next: qw

The quotemeta keyword

[edit | edit source]

The quotemeta command returns the value of EXPRESSION such that all the ASCII non-"word" characters (that do not match with [A-Za-z_0-9]) are backslashed. This is the internal function implementing the \Q escape in double-quoted strings. If EXPRESSION is not passed, the function uses $_ instead.

Syntax

[edit | edit source]
 quotemeta EXPRESSION 

Examples

[edit | edit source]
The code
my $sentence = 'The quick brown fox jumpes over and over again.'; my $substring = 'quick.*?fox'; my $quoted_substring = quotemeta($substring); $sentence =~ s{$quoted_substring}{big bad wolf}; print '"', $sentence, "\"\n\"", $substring, "\"\n\"", $quoted_substring, "\"\n"; 
returns the following:
"The quick brown fox jumpes over and over again." "quick.*?fox" "quick\.\*\?fox" 


Previous: qr Keywords Next: qw