Swift #5:字符和字符串
发布: (2025年12月10日 GMT+8 03:03)
2 min read
原文: Dev.to
Source: Dev.to
Character
一个字符通过对应 Unicode 表中元素索引的二进制数来表示,Unicode 定义了系统的字符集。
let letra: Character = "A"
可以使用快捷键 Control + Command + Space 打开表情符号库。
String
String 是由 Character 类型数据组成的序列。你可以:
- 用不同长度的字符串替换它。
- 使用
+运算符拼接另一个String。 - 修改其中的一部分。
let palabra: String = "Hola"
let oracion = "Hola " + "mundo"
Interpolación
要把 String 与其他类型的值拼接,使用字符串插值:
let manos = 2
let mensaje = "Tengo \(manos) manos" // Tengo 2 manos
Escapando caracteres
某些字符在 String 中具有特殊含义(例如 " 或 \)。
若要字面使用它们,需要使用转义序列:
| 转义序列 | 含义 |
|---|---|
\\ | 字面反斜杠 (\) |
\" | 字面双引号 (") |
\t | 制表符 |
\n | 换行(换行符) |
\r | 回车 |
\0 | 空字符 |
\u{...} | 任意 Unicode 字符 |
Raw strings (cadenas “crudas”)
原始字符串(raw string)允许在不需要转义 \ 或 " 等特殊字符的情况下编写文本。
其语法为 #"字面文本"#,外层引号被 # 包围。
Uso de # dentro del raw string
如果需要在内容中包含 #,将引号用 ## 包裹:
let ejemplo = ##"Esto incluye un # dentro del texto"##
Escapes dentro de raw strings
要在原始字符串中使用转义序列,需要在反斜杠前加 #:
let salto = #"Línea nueva: \#n"#
Interpolación en raw strings
要进行插值,使用与开头和结尾相同数量的 #:
let nombre = "Ana"
let saludo = ##"Hola \##(nombre)"##
Alternativas para saltos de línea
- 使用转义序列
\n。 - 用三个双引号包裹
String:
let multilinea = """
Primera línea
Segunda línea
"""