在表达式中使用字符串文字

字符串文字是一个引号,后跟文本,然后是结束引号。 转义序列可 帮助表达式作者解决字符串文字中的字符冲突。 本文是从开发人员的角度撰写的,介绍了如何在表达式中使用字符串文字。 

在运行时,以下表达式的计算结果将为字符串 Hello World

Append("Hello", " ", "World")

引号中包含的每个字符串都是字符串文字:

  • “你好”
  • ” ”
  • “世界”

要完成字符串,表达式作者通常只需要在开始引号和结束引号之间输入所需的文本。 例如:

"Genesys Cloud"

但是,如果作者想为 他说的 “嗨” 的值创建一个字符串文字,会发生什么情况? 如果你采用上述方法,用开头引号、文本和结束引号构造字符串文字,你的表达式将是:

"He said, "Hi""

所需的文字是 他说,“嗨”,但字符串文字是引号,后跟文本,然后是结束引号。 看上面的文字,字符串文字实际上是 “他说”, 后跟其他文本。 但是,我们希望 “Hi” 的引号文本也成为字符串文字的一部分。 不幸的是,单词 Hi 之前的引号 实际上变成了结尾引号,字符串文字在此结束。 那么我们怎样才能将文本作为字符串文字的一部分来解析? 使用 转义序列

要解决上面示例中的冲突,请对字符串文字内的引号应用转义序列。 此操作指示 Architect 中的表达式解析器将引号视为字符串文字中的文字引号,而不是结束引号。 n 转义序列由反斜杠 (\) 标识。 将其应用于 他说的 “嗨” 字面意思,如下所示:

"He said, \"Hi\""

在运行时,Architect 将文本评估为 Hi 说的 “Hi” 字符串。

现在,考虑以下示例: 男\ 女。 在这种情况下,在表达式中使用字符串文字时,如下所示:

"Male\\Female"

下表显示了 Architect 具有转义序列的字符:

字符 转义序列
引号 (“) \”
反斜杠 (\) \\
选项卡 \ t
新行 \ n
回车 \ r

以下示例说明了如何在字符串文字中使用转义序列。

示例

  • 将以下字符串放入一个字符串文字中:
  • He said, "I like the 24 hour clock because you don't have to deal with AM \ PM settings"

应答

  • "He said, \"I like the 24 hour clock because you don't have to deal with AM \\ PM settings\""

示例

  • 此示例包含几个需要转义序列的字符:
  • ""\\.#&."<tab character>"
  • 提示: 从引号开始,一次遍历字符串一个字符,为需要它的字符添加适当的转义序列,然后是结束引号。
  • <tab character=""> 应该是实际的制表符,而不是文本 <tab character="">。

应答

  • "\"\"\\\\.#&.\"\t\""