声明

本帮助页面上的信息同时适用于 StudioDesktop Studio

语句定义脚本执行时的操作。 这包括创建变量、分配新值、执行计算以及根据给定条件做出逻辑选择。 有些语句只执行一项任务,如为变量赋值。 其他语句则会影响脚本的流程。 语句按逻辑顺序执行,但每次运行脚本时,顺序都可能发生变化。

代码片段中的语句由一行或多行代码组成。 简单的一行语句可能会创建一个变量并为其赋值,如下所示:

ASSIGN firstName = "Beowulf"

复杂的语句可能有许多嵌套的行组,如下所示:

ASSIGN Names="Odin|Freya|Thor|Loki" ASSIGN SubCounter=1 FOREACH Name IN Names { IF Name = "Odin" | Name = "Freya" { ASSIGN NewNames[SubCounter]= "{Name}" ASSIGN SubCounter=SubCounter + 1 } }

如果代码片段中存在错误,则可以更改此代码片段中语句执行的逻辑顺序。 当发生错误时,Snippet 操作立即终止。 代码片段中的其余语句不会执行。 而错误消息会保存在 _ERR 变量中,指示问题所在。

语句类型

您可以在代码片段中使用以下类型的语句:

  • 声明:使用声明语句声明或创建新变量、对象和函数。
  • 决策:使用决策语句可让代码片段根据您指定的条件选择要执行的任务。 您可以使用它们来控制脚本中发生的事情的线性流程。
  • 循环:使用循环语句可让代码片段重复执行一项或一组任务,直到满足指定的结束条件。
  • 其他:这些语句允许您终止函数,在调试期间在 Snippet editor 窗口中显示结果,以及在代码片段中包含网络服务代理 DLL。

关键字

关键字是开始语句的命令。 它们是预定义的保留术语。 编译器识别关键字,然后执行与其关联的任务。

您能够在代码片段中使用的每种语句都有一个与其关联的关键字。 例如,要声明变量,您可以使用 ASSIGN 关键字。 或者,要生成选择语句,您可以使用 IF 关键字。 该语句和关键字具有相同的名称,因此 IF 语句使用 IF 关键字。

描述了 Snippet 语言中可用的关键字以及与每个关键字相关的语句。 此外还提供了完整的关键字列表

语句语法

所有语句都以关键字开头,后面为定义语句功能的单词或代码。 每个语句都有自己的语法。 本页的语法摘要部分描述了如何阅读语句语法。

有些语句需要条件代码。 此代码设置条件并定义满足或不满足条件时发生的情况。 条件代码可以是单个语句,也可以是多个语句。 它必须始终用大括号 ({ }) 括起来,即使它是单行也是如此。 条件代码有时称为

当编译器遇到新行或左花括号时,它会识别出语句的结束。 大括号的放置有些灵活。 以下格式均有效:


IF x=1 {TRACE "one" } 

IF x=1 {TRACE "one" } IF x=2 {TRACE "two" }
IF x=1 {
  TRACE "one"
}

IF x=1
{
  TRACE "one"
}

当嵌入的代码需要多个语句时,请遵循以下规则:

  • 每行放置一个语句。
  • 如果需要多个语句,请将它们放在不同的行上。 这会使阅读代码变得更加容易。
  • 需要自身嵌入代码的嵌入语句可以占用多行,其遵循使用大括号的有效格式

语法摘要

在涵盖每种语句类型的在线帮助页面中,每种语句类型都有一个语法摘要。 该摘要向您显示了此类语句所使用的格式。 它向您显示哪些元素是必需的,哪些元素是可选的。 它还展示了必须如何嵌套语法元素。

下表定义了语法摘要中的每个元素。 并非所有语句都包含每个元素。 解读语法摘要时,请密切注意元素的嵌套。

元素

详细信息

COMMAND

这是在该语句中使用的关键字的名称。 将 COMMAND 替换为用于您正在创建的语句的关键字。

关键字不区分大小写。 例如:对于编译器来说,FOREACHforeach 相同。 但是,在下次打开此代码片段时,Snippet 操作会自动将所有关键字转换为大写。

在该在线帮助中,关键字始终采用大写字母格式。

<required>

尖括号表示必要元素。 括号内的文本指示元素的类型,例如表达式、变量或文字值。

例如,在 FOREACH 语句语法摘要中,有两个必要元素:

FOREACH <var> in <array> { ... [ BREAK]}

在脚本中永远不要以文字方式使用尖括号以及其中的文本。 将该部分替换为其描述的代码元素。 例如,将 <expression> 替换为 i = 0 等表达式。

[optional]

方括号表示可选元素。 括号内的文本指示您可以使用的元素类型。 例如,在 IF 语法摘要中,可选的 ELSE 子句括在方括号中:[ELSE { ... }

如果使用可选元素,它必须显示在语法摘要中指示的相对于其他元素的位置。

在脚本中永远不要按字面意思使用方括号。

{ ... } 大括号表示可以使用代码块。

大括号与语法摘要中使用的尖括号和方括号不同。 尖括号和方括号不应包含在代码中,但大括号必须以文字方式包含在代码中。 但是,您应将语法摘要中的大括号内的省略号 (...) 替换为 Snippet 语句。

竖线 ( | )

竖线字符表示在哪里您可以选择在语句包含中的内容。 例如,在 ASSIGN 语句的语法摘要中,竖线字符表示您可以选择用双引号将该值引起来:

ASSIGN <variable> = "<value>" | <value>

该语法的解释说明了该选择。

省略号 (...)

省略号表示以下两件事之一:

  • 代码在块中的位置(如果发现其位于大括号之间)。
  • 连续模式(如果发现其位于带有关键字的方括号之间)。

SELECT 语法摘要中可以找到用于指示连续模式的省略号示例:

SELECT <{ CASE <expression> [{ ... }] [CASE <expression> <{ ... }>] [CASE ...] [DEFAULT <{ ... }>] }>

[CASE ...] 表示您可以按照既定模式继续添加所需数量的 CASE 子句。

例如,此页面上使用的 IF 语句的语法摘要为:

IF <expression> <{ ... }>

此摘要表明:

  • 关键字是 IF
  • 下一个元素是必要的表达式。
  • 最后一个元素是必要的代码块,必须用大括号括起来。

SWITCH 语句的语法摘要更加复杂:

SWITCH <var> <{CASE <literal> [{ ... }] [CASE <literal> [{ ... }]] [CASE ...] [DEFAULT [{ ... }]] }>

此摘要表明:

  • 关键字是 SWITCH
  • 下一个元素是必要的变量名称。
  • 该代码块是必需的,并且必须包含带有文字值的 CASE 子句。
  • 必要的 CASE 子句可以包含可选的代码块。
  • SWITCH 语句的代码块可以包含遵循该摘要中建立的模式的附加可选 CASE 子句。
  • SWITCH 语句的代码块可以包含带有可选代码块的可选 DEFAULT 子句。