单行 VBScript Select Case with multiple statements: eg: Case 0: x=a y=b

Single line VBScript Select Case with multiple statements: eg: Case 0: x=a y=b

我正在使用 VBScript 随机选择一个国旗和相应的国家。由于我生成代码的方式(以编程方式),每个 Case 语句将在一行中结束。

我知道在 Case x: 之后使用冒号 (":") 以将标志 var 保持在同一行。不过,将国家/地区变量添加到该行会破坏代码。

这一行的正确语法是什么?

当前代码示例:

Select Case rndCountry
Case 0: flag="af" country="Afghanistan"
Case 1: flag="al" country="Albania"
Case 2: flag="dz" country="Algeria"
Case 3: flag="as" country="American Samoa"
Case 4: flag="in" country="Andaman Islands"
Case 5: flag="ad" country="Andorra"
Case 6: flag="ao" country="Angola"
Case 7: flag="ai" country="Anguilla"
Case 8: flag="aq" country="Antarctica"
Case 9: flag="ag" country="Antigua and Barbuda"
Case 10: flag="ar" country="Argentina"
Case 11: flag="am" country="Armenia"
Case 12: flag="aw" country="Aruba"
Case 13: flag="ac" country="Ascension Island"
End Select

以上代码产生“预期的语句结束”错误。

我 post 很快就弄明白了:-)

正确的语法是:

Case 0: flag="af": country="Afghanistan"

请注意,以下内容也有效:

Case 0: flag="af": country="Afghanistan":

简而言之,每个变量后都需要冒号,以确保所有内容都在一行代码中。

VBScript 使用新行来确定一个语句从哪里开始,另一个语句从哪里开始,但是您可以使用冒号来终止语句,这样您就可以在一行中跨越多个语句。

例如:

Case 0: flag="af": country="Afghanistan"

相当于:

Case 0
  flag="af"
  country="Afghanistan"