Lihat jawaban saya yang menunjukkan hingga 4 cara berbeda untuk mencetak Stringinstance yang berisi tanda kutip ganda.
Imanou Petit
Jawaban:
224
Dengan garis miring terbalik sebelum tanda kutip ganda yang ingin Anda masukkan ke dalam String:
let sentence ="They said \"It's okay\", didn't they?"
Sekarang sentenceadalah:
Mereka berkata "Tidak apa-apa", bukan?
Ini disebut "melarikan diri" karakter: Anda menggunakan nilai literalnya, itu tidak akan ditafsirkan.
Dengan Swift 4 Anda dapat memilih untuk menggunakan """pembatas untuk teks literal di mana tidak perlu keluar:
let sentence = """
They said "It's okay", didn't they?
Yes, "okay" is what they said.
"""
Ini memberi:
Mereka berkata "Tidak apa-apa", bukan?
Ya, "oke" adalah yang mereka katakan.
Dengan Swift 5 Anda dapat menggunakan pembatas yang ditingkatkan:
Literal string sekarang dapat diekspresikan menggunakan pembatas yang ditingkatkan . String literal dengan satu atau beberapa tanda angka (#) sebelum kutipan pembuka memperlakukan karakter garis miring terbalik dan tanda kutip ganda sebagai literal kecuali diikuti dengan jumlah tanda angka yang sama. Gunakan pembatas yang disempurnakan untuk menghindari literal string yang berantakan yang berisi banyak karakter kutip ganda atau garis miring terbalik dengan pelolosan ekstra.
String Anda sekarang dapat direpresentasikan sebagai:
let sentence =#"They said "It's okay", didn't they?"#
Dan jika Anda ingin menambahkan variabel ke string Anda, Anda juga harus menambahkan #setelah garis miring terbalik:
Literal string dapat menyertakan karakter khusus berikut:
Karakter khusus yang lolos \ 0 (karakter nol), \ (garis miring terbalik), \ t (tab horizontal), \ n (umpan baris), \ r (carriage return), \ "(petik ganda) dan \ '(petik tunggal)
Skalar Unicode arbitrer, ditulis sebagai \ u {n}, dengan n adalah angka heksadesimal 1–8 digit dengan nilai yang sama dengan titik kode Unicode yang valid
yang berarti selain dapat meng-escape karakter dengan garis miring terbalik, Anda dapat menggunakan nilai unicode. Dua pernyataan berikut ini setara:
let myString ="I love \"unnecessary\" quotation marks"let myString ="I love \u{22}unnecessary\u{22} quotation marks"
Karena literal string multilini menggunakan tiga tanda kutip ganda, bukan hanya satu, Anda dapat menyertakan tanda kutip ganda ( ") di dalam literal string multilini tanpa menguranginya.
let string ="""
A string with "double quotes" in it.
"""
print(string)//prints: A string with "double quotes"in it.
4. Menggunakan literal string mentah (membutuhkan Swift 5)
Anda dapat menempatkan string literal dalam pembatas yang diperluas untuk menyertakan karakter khusus dalam string tanpa meminta efeknya. Anda menempatkan string Anda di dalam tanda kutip ( ") dan mengelilinginya dengan tanda angka ( #). Misalnya, mencetak string literal #"Line 1\nLine 2"#mencetak baris feed escape sequence ( \n) daripada mencetak string melintasi dua baris.
let string =#"A string with "double quotes" in it."#
print(string)//prints: A string with "double quotes"in it.
String
instance yang berisi tanda kutip ganda.Jawaban:
Dengan garis miring terbalik sebelum tanda kutip ganda yang ingin Anda masukkan ke dalam String:
Sekarang
sentence
adalah:Ini disebut "melarikan diri" karakter: Anda menggunakan nilai literalnya, itu tidak akan ditafsirkan.
Dengan Swift 4 Anda dapat memilih untuk menggunakan
"""
pembatas untuk teks literal di mana tidak perlu keluar:Ini memberi:
Dengan Swift 5 Anda dapat menggunakan pembatas yang ditingkatkan:
String Anda sekarang dapat direpresentasikan sebagai:
Dan jika Anda ingin menambahkan variabel ke string Anda, Anda juga harus menambahkan
#
setelah garis miring terbalik:sumber
Untuk kelengkapan, dari dokumen Apple :
yang berarti selain dapat meng-escape karakter dengan garis miring terbalik, Anda dapat menggunakan nilai unicode. Dua pernyataan berikut ini setara:
myString
sekarang akan berisi:sumber
Sesuai dengan kebutuhan Anda, Anda dapat menggunakan salah satu dari 4 pola berikut untuk mencetak Swift
String
yang berisi tanda kutip ganda.1. Menggunakan tanda kutip ganda yang dipisahkan
Literal string dapat menyertakan karakter khusus seperti
\"
:2. Menggunakan skalar Unicode
Literal string dapat menyertakan nilai skalar Unicode yang ditulis sebagai
\u{n}
:3. Menggunakan literal string multiline (memerlukan Swift 4)
The Swift Bahasa Pemrograman / String dan Karakter negara:
4. Menggunakan literal string mentah (membutuhkan Swift 5)
The Swift Bahasa Pemrograman / String dan Karakter negara:
sumber