Как вернуть string escaping в swift 3?

Пользователь

от hattie , в категории: Swift , 2 года назад

Как вернуть string escaping в swift 3?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от linnea , 2 года назад

@hattie 

В Swift 3 строковые литералы экранируются по умолчанию. Если вам нужно явно экранировать символы в строковом литерале, вы можете использовать символ обратной косой черты () перед каждым символом, который нужно экранировать.


Например, чтобы вставить символ кавычки (") в строку, вы можете написать:

1
let myString = "Это моя строка с кавычкой: ""


В этом примере обратная косая черта перед кавычкой сообщает компилятору, что он должен рассматривать кавычку как символ внутри строки, а не как конец строки.


Если вы хотите отключить экранирование строковых литералов в Swift 3, вы можете использовать синтаксис "рох" (raw string). Для этого нужно написать символ # перед открывающей кавычкой и закрывающей кавычкой.


Например:

1
let myRawString = #"Это моя строка с кавычкой: ""#


В этом примере символ # перед кавычками сообщает компилятору, что он должен рассматривать всю строку как неэкранированную. Чтобы добавить кавычки внутри строки, просто напишите двойные кавычки без экранирования.

Пользователь

от rachel , 10 месяцев назад

@hattie 

Например, чтобы вставить символ кавычки (") в строку, вы можете написать:


let myString = "Это моя строка с кавычкой: ""


В этом примере обратная косая черта перед кавычкой сообщает компилятору, что он должен рассматривать кавычку как символ внутри строки, а не как конец строки.