A Bit More About Quoting
So
far, whenever we’ve needed to quote a
string we’ve used double quotes
(as in,
"this is a double-quoted string"
). In fact, Perl
also supports the use of single quotes
(as in,
'this is a single-quoted string'
). It’s
important for you to understand the difference between the two.
The difference is just this: when it processes a double-quoted
string, Perl looks in it for things that look like variables and
replaces them with the contents of those variables. This process is
called variable
interpolation
. It
also looks for certain sequences beginning with a backslash
(\
) and replaces them with special characters. The
sequences are called
backslash
escapes,
and the process of replacing them with special
characters is called backslash interpretation
.
When it’s processing a single-quoted string Perl doesn’t
bother doing this. You get the string, just like it’s written.
(Actually, Perl processes two backslash escapes within a
single-quoted string: \'
, which it interprets as a
literal single quote, and \\
, which it interprets
as a literal backslash. This lets you put literal single quotes and
literal backslashes inside your string, which would otherwise be
difficult to do.)
Let’s create a new script called quotes.plx
(Example 2-2) to see how this works.
Example 2-2. A script to test how Perl treats single- and double-quoted strings
#!/usr/bin/perl # quotes.plx -- test handling of single- and double-quoted strings $veggies = 'rutabagas'; print "I like to eat ...
Get Perl for Web Site Management now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.