Синтаксис чтения строки — это двойные кавычки, произвольное количество символов и еще одна двойная кавычка, "как это". Чтобы включить двойные кавычки в строку, предшествуйте им обратным слэшем; таким образом, "\"" — это строка, содержащая только один символ двойных кавычек. Точно так же вы можете включить обратный слэш, предшествуя ему еще одним обратным слэшем, как здесь: "это \\ — один встроенный обратный слэш".
Поскольку строка — это массив символов, вы можете указать символы строки, используя синтаксис чтения символов, но без ведущего знака вопроса. Это полезно для включения в константы строк символов, которые не обозначают себя сами. Таким образом, управляющие символы могут быть указаны в виде последовательностей экранирования, начинающихся с обратного слэша; например, "foo\r" дает «foo» с последующим символом возврата каретки. См. Базовый синтаксис символов для других управляющих символов. Аналогично, вы можете использовать специальный синтаксис чтения для управляющих символов (см. Синтаксис управляющих символов), как в "foo\^Ibar", который создает символ табуляции, встроенный в строку. Вы также можете использовать последовательности экранирования для не-ASCII символов, описанные в Общий синтаксис экранирования, как в "\N{LATIN SMALL LETTER A WITH GRAVE}" и "\u00e0" (однако см. замечание о не-ASCII символах в Не-ASCII символах в строках).
Символ новой строки не является специальным в синтаксисе чтения строк; если вы вводите новую строку между двойными кавычками, она становится символом в строке. Но экранированная новая строка — та, которая предшествует ей символом «\» — не становится частью строки; т.е. парсер Lisp игнорирует экранированную новую строку при чтении строки. Экранированный пробел « » также игнорируется.
"Полезно включать новые строки
в строковые описания,
но новая строка игнорируется, если она экранирована."
⇒ "Полезно включать новые строки
в строковые описания,
но новая строка игнорируется, если она экранирована."