0Pricing
Dart Academy · 课时

多行字符串和原始字符串

处理换行符和无需转义的文本

多行字符串和原始字符串 是 CoddyKit 上的免费 Dart Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Dart Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Dart Academy 课程共包含 4 节课。

换行问题

有时文本需要跨越多行,例如诗歌或地址。Dart 提供了两种简洁的处理方式。

多行文本使用三引号

三引号允许您在字符串中按下回车键。您输入的每个换行都会成为文本中的真实换行符。

var addr = '''123 Main St
Apt 4''';

两种引号都可以使用三引号形式

三引号有两种形式:三个单引号或三个双引号。它们的行为相同,请根据文本选择合适的一种。

var s = """line one
line two""";

换行转义符

您也可以使用换行转义符反斜杠-n 插入换行。这对于不想写成多行的单引号字符串很方便。

var s = 'top\nbottom';

注意第一行

使用三引号时,紧跟在开头标记后的文本会立即开始。如果在内容前换行,就会多出一个空白的第一行。

var s = '''
starts on line two''';

转义仍然有效

在普通字符串中,反斜杠具有特殊含义。它可以实现制表符、换行或字面量引号等转义效果。

var s = 'col1\tcol2';

使用 raw 字符串

raw 字符串会关闭所有转义处理。在字符串前加上字母 r,之后每个反斜杠都会完全按照输入的形式保留。

var path = r'C:\Users\Ada';

raw 字符串为何有用

对于文件路径和正则表达式,raw 字符串特别实用,因为其中到处都是反斜杠,不必逐个转义会轻松许多。

var pattern = r'\d+';

raw 字符串也会禁用字符串插值

在 raw 字符串中,美元符号只是一个字符。字符串插值会被关闭,因此 $name 会按字面显示,而不是替换为对应的值。

var s = r'cost is $price';

组合使用 raw 和三引号

您可以组合这些功能:raw 三引号字符串既能跨越多行,也能同时保留每个反斜杠的字面形式。

var s = r'''path\one
path\two''';

选择合适的工具

多行文本请使用三引号,反斜杠很多的文本请使用 raw。两者结合后,几乎可以应对所有棘手的字符串场景。

快速检查

您想让字符串中的反斜杠按字面保留。应该使用什么?

回顾:多行字符串与 raw 字符串

您已经了解到,三引号适合处理多行文本,而 raw 前缀会让反斜杠和美元符号保持字面形式。🎉

常见问题解答

「多行字符串和原始字符串」课时是免费的吗?

是的 — 「多行字符串和原始字符串」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Dart Academy 课程的其余内容,请升级到 CoddyKit PRO。 Dart Academy 课程共包含 4 节课。

「多行字符串和原始字符串」这节课中我会学到什么?

处理换行符和无需转义的文本 你通过在浏览器中直接运行的动手代码来练习 Dart Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Dart Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Dart Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「多行字符串和原始字符串」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Dart Academy 课中编写并运行代码吗?

能。每节 Dart Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 字符串字面量和引号
  2. 使用美元符号进行字符串插值
  3. 多行字符串和原始字符串
  4. 日常字符串方法
← 返回 Dart Academy