游乐游手机版
首页/AI热点日报/热点详情

扣子条件分支与循环控制实操教程

类型:热点整理2026-07-05
条件分支与循环控制是扣子机器人应对用户输入变化的关键。配置时需注意表达式用英文双引号、分支不能悬空、多级判断按顺序匹配。循环节点可配合文本分割或NLU插件,循环体内禁止放置等待节点。嵌套组合能实现逐项判断,提升维护性。

条件分支与循环控制是让扣子机器人实现智能动态响应的核心机制。如果未能掌握这两类节点的嵌套规则与触发时机,机器人将始终沿固定路径运行,无法应对用户输入的多样变化或状态判断需求。

下面直接进入实操环节,将配置方法逐一拆解透彻。

条件分支节点添加方法

在 Bot 编辑画布中,点击左上角「+ 添加节点」,选择「逻辑」→「条件分支」。将节点拖入画布后,双击节点,在「条件设置」面板中编写条件表达式,比如 【user_input contains "退款"】。注意:字符串必须使用英文双引号包裹,若写成 user_input == "退款" 则无法匹配。

每个分支线的末端都必须连接一个有效节点,例如「发送消息」或「变量赋值」。如果某条分支悬空未连接,发布后该路径将直接中断——系统不会报错,但也不会执行任何操作。

多级 if-elif-else 结构配置详解

第一步:在条件分支节点右侧点击「+ 添加分支」,新增第二条判断分支线。

第二步:在新分支的条件输入框中填写 【user_input starts_with "查订单"】,务必注意使用 starts_with 而非 startswith,缺少下划线将导致整个条件失效。

第三步:再次点击「+ 添加分支」,添加一条默认分支,将条件字段留空即表示 else 路径。此默认分支必须置于所有带条件分支的最下方,否则其前面的条件将永远无法被命中。

这三段分支共同构成完整的 if-elif-else 逻辑链,顺序不可调换。系统按从上到下的顺序逐条匹配,一旦某条分支条件成立,后续判断将全部跳过。

使用循环节点遍历用户输入关键词

方法一:利用「循环」节点与「文本分割」变量配合。首先使用「变量赋值」节点将 user_input 拆分为列表,例如设置变量 keywords = split(user_input, " "),然后将该变量拖入「循环」节点的「数据源」字段。

方法二:直接绑定「用户消息关键词识别」插件的输出结果。若已启用 NLU 插件,其输出的 match_keywords 字段本身即为数组,可直接作为循环数据源使用,无需手动拆分。

⚠️ 注意:循环体内部禁止放置「等待用户回复」节点,否则流程将在第一次迭代时卡死,后续循环无法继续执行。

嵌套条件分支与循环的典型组合方案

在循环体内部放置一个条件分支节点,即可实现“对每个关键词逐一判断”的效果。举例说明:循环遍历 keywords,进入条件分支后,判断当前项 item == "发货",若成立则发送物流查询模板,否则跳过。

这种结构避免了重复编写多个 if 判断语句,也比在外部堆叠大量并列条件更易于维护。每次循环迭代时,条件分支内的表达式都会重新计算,item 的值会随当前循环项自动更新,无需额外编写索引取值逻辑。

扣子条件分支与循环控制实操教学

来源:https://www.php.cn/faq/2643331.html?uid=1589237

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。