Steve Holden <sholden@holdenweb.com>:

Clarify the handling of characters following backslashes in raw strings.
This commit is contained in:
Fred Drake 2001-01-09 21:38:16 +00:00
parent d5f0198dec
commit 347a62505c
2 changed files with 14 additions and 13 deletions

View File

@ -63,6 +63,7 @@ Konrad Hinsen
Stefan Hoffmeister
Albert Hofkamp
Gregor Hoffleit
Steve Holden
Gerrit Holl
Rob Hooft
Brian Hooper

View File

@ -372,19 +372,19 @@ important to note that the escape sequences marked as ``(Unicode
only)'' in the table above fall into the category of unrecognized
escapes for non-Unicode string literals.
When an `r' or `R' prefix is present, backslashes are still used to
quote the following character, but \emph{all backslashes are left in
the string}. For example, the string literal \code{r"\e n"} consists
of two characters: a backslash and a lowercase `n'. String quotes can
be escaped with a backslash, but the backslash remains in the string;
for example, \code{r"\e""} is a valid string literal consisting of two
characters: a backslash and a double quote; \code{r"\e"} is not a value
string literal (even a raw string cannot end in an odd number of
backslashes). Specifically, \emph{a raw string cannot end in a single
backslash} (since the backslash would escape the following quote
character). Note also that a single backslash followed by a newline
is interpreted as those two characters as part of the string,
\emph{not} as a line continuation.
When an `r' or `R' prefix is present, a character following a
backslash is included in the string without change, and \emph{all
backslashes are left in the string}. For example, the string literal
\code{r"\e n"} consists of two characters: a backslash and a lowercase
`n'. String quotes can be escaped with a backslash, but the backslash
remains in the string; for example, \code{r"\e""} is a valid string
literal consisting of two characters: a backslash and a double quote;
\code{r"\e"} is not a value string literal (even a raw string cannot
end in an odd number of backslashes). Specifically, \emph{a raw
string cannot end in a single backslash} (since the backslash would
escape the following quote character). Note also that a single
backslash followed by a newline is interpreted as those two characters
as part of the string, \emph{not} as a line continuation.
\subsection{String literal concatenation\label{string-catenation}}