SSML 中的预留字符 - Amazon Polly
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SSML 中的预留字符

有五种预定义字符通常无法在 SSML 语句中使用。这些实体根据语言规范予以预留。这些字符为

名称

      字符      

      转义代码      

引号(双引号)

"

"

表示和的符号

&

&

撇号或单引号

'

'

小于号

<

&lt;

大于号

>

&gt;

由于 SSML 会将这些字符用在其代码中,要在 SSML 中使用这些符号,您必须在使用时转义该字符。您使用转义码而不是实际字符,以便在仍然创建有效的 SSML 文档时正确显示。例如,以下句子

We're using the lawyer at Peabody & Chambers, attorneys-at-law.

在 SSML 中将转义为

<speak> We&apos;re using the lawyer at Peabody &amp; Chambers, attorneys-at-law. </speak>

在这种情况下,撇号和表示和的符号的特殊字符将被转义,因此 SSML 文档仍然有效。

对于 &<> 符号,使用 SSML 时始终需要转义码。另外,当您使用撇号/单引号 (') 作为撇号时,也必须使用转义码。

但是,当您使用双引号 (") 或撇号/单引号 (') 作为引号时,是否使用转义码取决于上下文。

双引号

  • 在由双引号界定的属性值中必须进行转义。例如,在下面的 Amazon CLI 代码中

    --text "Pete &quot;Maverick&quot; Mitchell"
  • 在文本上下文中不需要进行转义。例如,在下面的上下文中

    He said, "Turn right at the corner."
  • 在由单引号界定的属性值中时,不需要进行转义。例如,在下面的 Amazon CLI 代码中

    --text 'Pete "Maverick" Mitchell'

单引号

  • 用作撇号时必须进行转义。例如,在下面的上下文中

    We&apos;ve got to leave quickly.
  • 在文本上下文中不需要进行转义。例如,在下面的上下文中

    "And then I said, 'Don't quote me.'"
  • 在由双引号界定的代码属性中,不需要进行转义。例如,在下面的 Amazon CLI 代码中

    --text "Pete 'Maverick' Mitchell"