Before we move on to our consideration of double-quoted strings, it is necessary to first consider a small digression. We know how to represent strings in Perl, but, as you may have noticed, the examples we have given thus far do not do anything interesting. If you try placing the statements that we listed as examples in Single-quoted Strings, into a full Perl program, like this:
#!/usr/bin/perl use strict; use warnings; 'Three \\\'s: "\\\\\"'; # There are three \ chars between "" 'xxx\'xxx'; # xxx, a single-quote character, and then xxx 'Time to start anew.';
you probably noticed that nothing of interest happens. Perl gladly runs this program, but it produces no output.
Thus, to begin to work with strings in Perl beyond simple hypothetical
considerations, we need a way to have Perl display our strings for us.
The canonical way of accomplishing this in Perl is to use the
print STRING;, where
STRING is any valid Perl string.
So, to reconsider our examples, instead of simply listing the strings, we could instead print each one out:
#!/usr/bin/perl use strict; use warnings; print 'Three \\\'s: "\\\\\"'; # Print first string print 'xxx\'xxx'; # Print the second print 'Time to start anew. '; # Print last string, with a newline at the end
This program will produce output. When run, the output goes to what is called the standard output. This is usually the terminal, console or window in which you run the Perl program. In the case of the program above, the output to the standard output is as follows:
Three \'s: "\\\"xxx'xxxTime to start anew.
Note that a newline is required to break up the lines. Thus, you need to put a newline at the end of every valid string if you want your string to be the last thing on that line in the output.
Note that it is particularly important to put a newline on the end of the last string of your output. If you do not, often times, the command prompt for the command interpreter that you are using may run together with your last line of output, and this can be very disorienting. So, always remember to place a newline at the end of each line, particularly on your last line of output.
Finally, you may have noticed that formatting your code with newlines in the middle of single-quoted strings hurts readability. Since you are inside a single-quoted string, you cannot change the format of the continued lines within the print statement, nor put comments at the ends of those lines because that would insert data into your single-quoted strings. To handle newlines more elegantly, you should use double-quoted strings, which are the topic of the next section.