# HTTP 路由规则操作子表达式构建器

通过 AND、OR、NOT 和括号分组，可以使用子表达式构建器来根据子表达式构建复杂的规则条件。应用更改时，子表达式构建器将对规则进行验证。如果找到未配对的括号以及不支持的逻辑运算符，那么将发出警报。

要查看用于 ODR 的此管理控制台页面，请单击服务器 > 服务器类型 > 随需应变路由器 > ODR > 随需应变路由器属性 > 路由策略 HTTP 规则 > 指定方式 > 表达式 > 子表达式构建器。

要查看用于 ODR 集群的此管理控制台页面，请单击服务器 > 集群 > 随需应变路由器集群 > ODR 集群 > 随需应变路由器属性 > 路由策略 HTTP 规则 > 指定方式 > 表达式 > 子表达式构建器。

## 选择操作数

以下列表显示了操作数选项：

- 集群
- 服务器
- 模块

## 运算符

根据所选操作数的不同，将显示各种运算符选项。以下列表显示了运算符选项：

- <> ：“小于”或“大于”运算符适用于数字。
- 等于（=）：“等于”运算符表示以区分大小写方式进行匹配。
- 忽略大小写等于（EQUALSIGNORECASE）：“相等”运算符表示以不区分大小写方式进行匹配。
- IS NULL：此运算符表示查询验证结果表明所请求的参数不存在。
- IS NOT NULL：此运算符表示查询验证结果表明所请求的参数存在。
- LIKE：此运算符表示对字符串操作数值进行模式匹配。在模式匹配的开始位置，值必须包含百分号通配符（%）。例如，表达式 `host LIKE %blanca` 表示与单词 blanca 或者任何其他以 blanca 结尾的单词匹配；表达式 `host LIKE blanca%` 表示与单词 blanca 或者任何其他以 blanca 开头的单词匹配；表达式 `host LIKE %blanca%` 表示与单词 blanca 或者任何嵌入了 blanca 的单词匹配。
- IN：此运算符表示在单个表达式中包含多个值的操作数。例如，对于名为 `port` 的操作数，如果要表示端口值可以是任何值或所有值，例如 `9080`、`9090` 和 `9091`，那么表达式片段为 `port IN (9080,9090,9091)`。括号中值的表示方式取决于端口的数据类型。如果端口是整数，那么正确的语法是一些不带引号的值。如果端口是字符串，那么正确的语法是 `port IN ('9080', '9090', '9091')`。

## 值

根据所选运算符的不同，输入要创建的子表达式的值。

## 子表达式构建器

根据已指定的操作数、运算符和值，生成子表达式。

## 追加

对新规则添加子表达式。

相关信息：
路由策略 HTTP 规则
HTTP 规则表达式构建器

文件名：http_subexpression.html