Appearance
文本处理节点
文本处理节点用于对确定性的文本数据执行字符串拼接或字符串分隔。它不调用模型,适合把多个变量组织成提示词、通知正文、接口参数,或把一段按固定符号组织的文本拆成字符串列表。
当前节点只有“字符串拼接”和“字符串分隔”两种处理方式。节点说明中的“提取”不是一个独立模式;需要按语义总结、翻译、改写或从自然语言中抽取字段时,应使用大模型节点,需要按 JSON 结构取值时应使用 JSON 反序列化节点。
当前实现与旧文档差异
本页保留了旧文档中关于模板引用、数组拼接、自定义分隔符和中英文示例的内容,并按当前系统实现补充和更正如下:
| 项目 | 当前实现 | 使用时应注意 |
|---|---|---|
| 处理方式 | 字符串拼接、字符串分隔 | 没有单独的“文本提取”模式 |
| 拼接输入 | 可添加多个输入,支持工作流中的字符串、数值、布尔、对象、数组及文件类变量 | 输入名由界面生成,如 String1、String2 |
| 拼接模板 | 支持 {{变量名}}、{{变量名.子变量名}}、{{变量名[数组索引]}} | 引用不存在的路径时,该占位位置会输出空文本 |
| 拼接符 | 只用于把直接引用的数组元素连接成文本 | 不会自动连接 String1、String2 等多个输入;多个输入的顺序与文字由模板决定 |
| 分隔输入 | 固定为一个 String 输入 | 不能在分隔模式下新增第二个输入或修改输入类型 |
| 分隔符 | 可同时选择多个内置分隔符,也可添加自定义分隔符 | 多个分隔符按顺序作用于已有分段 |
| 标点兼容 | 中文/英文句号、逗号、分号按成对规则处理 | 例如选择中文逗号 , 时,英文逗号 , 也会被识别 |
| 分隔结果 | 输出 Array<String> | 当前不会自动去除首尾空白,也不会丢弃空字符串 |
| 模式切换 | 切换处理方式时重建输入、输出和对应配置 | 切换前应先确认旧配置不再需要 |
适用场景
- 将姓名、时间、正文等变量拼成通知、提示词或接口文本。
- 将数组内容按逗号、换行或其他符号转换为可读字符串。
- 将 CSV 风格的单行文本、标签串或固定格式文本拆成列表。
- 在循环、批处理或插件节点之前,把分隔文本转换为
Array<String>。
以下任务不建议使用文本处理节点:
- 总结、翻译、改写或语义分类:使用大模型节点。
- 按正则表达式进行复杂匹配:当前节点未提供正则提取模式。
- 解析 JSON、XML 或其他结构化协议:使用对应的解析节点或插件。
- 修改工作流变量本身:文本处理节点只产生新输出;需要保存或更新变量时,再连接变量赋值节点。
字符串拼接
选择“字符串拼接”后,可以添加多个输入,并在“拼接结果”中编写输出模板。

输入
点击“新增输入”会依次创建 String1、String2 等输入。每项可以填写常量,也可以引用上游变量;当前界面允许为拼接输入选择工作流支持的不同变量类型。
输入值不会因为配置了“拼接符”而自动串联。必须在“拼接结果”模板中明确引用需要的变量,例如:
- 第一行:颜色一:{{String1}}
- 第二行:颜色二:{{String2}}
当 String1 为“白色”、String2 为“蓝色”时,输出为:
text
颜色一:白色
颜色二:蓝色模板引用
| 写法 | 说明 | 示例 |
|---|---|---|
| {{变量名}} | 引用整个输入值 | {{String1}} |
| {{变量名.子变量名}} | 引用对象中的子字段 | {{user.name}} |
| {{变量名[数组索引]}} | 引用数组中的指定元素,索引从 0 开始 | {{colors[0]}} |
运行时会把数值和布尔值转换为文本,把 null 转换为空文本;对象在直接插值时会转换为 JSON 文本。引用的变量或子路径不存在时,当前实现不会中断流程,而是在该位置插入空文本,因此发布前应使用有代表性的输入试运行并检查结果。
拼接符
“拼接符”只在模板直接引用数组时生效。例如 colors 为:
json
["红色", "蓝色", "白色"]模板为“可选颜色:{{colors}}”,拼接符为中文逗号时,结果为:
text
可选颜色:红色,蓝色,白色如果模板写成“{{colors[0]}} / {{colors[1]}}”,元素之间的 / 来自模板,不受“拼接符”配置影响。当前默认拼接符为中文逗号 ,。
输出
拼接模式固定输出:
| 输出 | 类型 | 说明 |
|---|---|---|
output | String | 模板渲染后的完整文本 |
字符串分隔
选择“字符串分隔”后,节点只保留一个固定的 String 输入,并将分隔结果输出为字符串列表。

输入与分隔符
分隔模式必须同时满足:
String输入已填写常量或引用了有效的上游字符串变量。- 至少选择一个非空分隔符。
当前内置分隔符包括:
- 换行
\n、制表符\t和空格。 - 中文句号
。、英文句号.。 - 中文逗号
,、英文逗号,。 - 中文分号
;、英文分号;。
也可以在分隔符下拉框中点击“自定义”,添加多字符分隔符,例如 --- 或 ||。当前界面最多保留 20 个自定义分隔符选项,每个自定义分隔符最长 20 个字符。
中英文标点配对
当前运行时会对三组中英文标点做兼容扩展:
| 选择任意一项 | 实际同时识别 |
|---|---|
中文句号 。 或英文句号 . | 。 和 . |
中文逗号 , 或英文逗号 , | , 和 , |
中文分号 ; 或英文分号 ; | ; 和 ; |
因此,选择“中文逗号”并不表示只按中文逗号分隔。若业务必须严格区分中英文标点,当前内置选项不适合直接使用,应先在上游统一字符,或通过专用插件处理。
多个分隔符的处理顺序
选择多个分隔符时,运行时会按配置顺序对当前已有的每个分段继续分隔,而不是把所有分隔符拼成一个正则表达式。对普通文本,最终效果通常是按所有已选符号拆分;当分隔符互相包含时,例如 - 与 ---,顺序可能影响结果,应优先选择更长、更具体的自定义分隔符并试运行核对。
空白和空字符串
当前分隔实现不会自动执行 trim,也不会过滤空字符串。例如:
text
A,,B,按逗号分隔后可能包含空元素,元素中的首尾空格也会保留。如果下游不接受空值,应在后续节点中进行过滤或清洗。
示例
输入:
text
小明,18岁,A市人,喜欢看书、看电影,偶尔健身。选择中文逗号后,输出 output 为类似:
json
["小明", "18岁", "A市人", "喜欢看书、看电影", "偶尔健身。"]中文顿号 、 不属于当前内置分隔符,因此“喜欢看书、看电影”仍是一个元素。需要继续按顿号拆分时,可把 、 添加为自定义分隔符。
输出
分隔模式固定输出:
| 输出 | 类型 | 说明 |
|---|---|---|
output | Array<String> | 按所选分隔符拆出的字符串列表 |
发布前检查
- 当前处理方式是否与预期一致,切换模式后配置是否已重新填写。
- 所有输入是否都有常量或有效的上游变量引用。
- 拼接模板中的变量名、对象路径和数组索引是否存在。
- 是否误把“拼接符”理解为多个输入之间的连接符。
- 分隔模式是否至少选择了一个非空分隔符。
- 中英文句号、逗号、分号的配对行为是否会造成额外拆分。
- 多个或互相包含的分隔符顺序是否符合预期。
- 下游是否能够接收
String或Array<String>,是否需要清理空项和空白。 - 示例中是否包含足够的边界数据,例如缺失字段、连续分隔符、末尾分隔符和空字符串。
常见问题
为什么配置了拼接符,String1 和 String2 仍没有自动连接?
拼接符只用于模板中直接引用的数组。多个独立输入必须在“拼接结果”中分别写出,并由模板中的文字、换行或符号决定连接方式。
为什么模板中的某个占位符变成了空白?
当前运行时对不存在的变量、对象子字段或数组路径输出空文本,不会自动报错。检查变量名、大小写、上游连线和实际数据结构。
为什么对象变成了一整段 JSON?
对象直接插入文本时会转换为 JSON 字符串。若只需要其中一个字段,应使用 {{对象变量.字段名}};结构不确定时先在上游整理数据。
为什么选择中文逗号后,英文逗号也被分隔了?
这是当前运行时的中英文标点兼容规则。中文与英文的句号、逗号、分号分别成对识别。
为什么分隔结果中有空字符串或多余空格?
当前节点不会自动清除首尾空格或过滤空元素。连续分隔符、字符串开头或末尾的分隔符都会产生空项,需要在下游显式清洗。
为什么切换处理方式后原配置不见了?
拼接与分隔的输入数量、类型和输出结构不同。当前界面切换模式时会重建对应配置,不能把两种模式的配置同时保留在一个节点中。
为什么不能用它总结、翻译或抽取自然语言信息?
文本处理节点是固定规则转换,不理解文本语义。此类任务应使用大模型节点,并在需要稳定结构时配合 JSON 反序列化或结构化输出。