View a markdown version of this page

Expressions - Amazon Lex

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

Expressions

您可以在 Amazon Lex V2 中添加表达式字符串来执行函数。此表显示了可在 SRGS 表达式中使用的语法和示例。

表达式类型 语法 示例 是否支持?
正则表达式文本 包含有效正则表达式特殊字符的字符串文本
"^\d\.$"
否
函数 function functionName(parameters) { functionBody}
var x = function calc() { return 10; }
否
删除 delete expression
delete obj.property;
否
Void void expression
void (2 == '2');
否
Typeof typeof expression
typeof 42;
否
成员索引 expression [ expressions ]
var fruits = ["apple"]; fruits[0];
是
成员点 expression . identifier
out.value
是
参数 expression (arguments)
new Date('1994-10-11')
是
后增量 expression++
var x=10; x++;
是
后减量 expression--
var x=10; x--;
是
预增量 ++expression
var x=10; ++x;
是
预减量 --expression
var x=10; --x;
是
一元加号/一元减号 +expression / -expression
+x / -x;
是
按位非 ~ expression
const a = 5; console.log( ~a );
是
逻辑非 ! expression
!(a > 0 || b > 0)
是
倍增 expression ('*' | '/' | '%') expression
(x + y) * (a / b)
是
加 expression ('+' | '-') expression
(a + b) - (a - (a + b))
是
位移位 expression ('<<' | '>>' | '>>>') expression
(a >> b) >>> c
是
相对 expression ('<' | '>' | '<=' | '>=') expression
if (a > b) { ... }
是
In expression in expression
fruits[0] in otherFruits;
是
等于 expression ('==' | '!=' | '===' | '!===') expression
if (a == b) { ... }
是
按位与/按位异或/按位或 expression ('&' | '^' | '|') expression
a & b / a ^ b / a | b
是
逻辑和/逻辑或 expression ('&&' | '||') expression
if (a && (b ||c)) { ...}
是
三元 expression ? expression : expression
a > b ? obj.prop : 0
是
赋值 expression = expression
out.value = "string";
是
赋值运算符 expression ('*=' | '/=' | '+=' | '-=' | '%=') expression
a *= 10;
是
赋值按位运算符 expression ('<<=' | '>>=' | '>>>=' | '&=' | '^=' | '|=') expression
a <<= 10;
是
标识符 identifierSequence 其中 identifierSequence 是一系列有效字符
fruits=[10, 20, 30];
是
Null 文本 null
x = null;
是
布尔文本 true | false
x = true;
是
字符串文本 'string' / "string"
a = 'hello', b = "world";
是
十进制文本 integer [.] digits [exponent]
111.11 e+12
是
十六进制文本 0 (x | X)[0-9a-fA-F]
0x123ABC
是
八进制文本 O [0-7]
"O51"
是
数组文本 [ expression, ... ]
v = [a, b, c];
是
对象文本 {property: value, ...}
out = {value: 1, flag: false};
是
带圆括号 ( expressions )
x + (x + y)
是