验证字符串不匹配
验证字符串不匹配 用于验证两个字符串是否不匹配,支持普通字符串匹配和正则表达式匹配。不匹配时返回 true,否则返回 false,常用于格式排除校验、内容过滤和异常模式检测。
指令标识:VerifyNotMatch
指令类型:通用指令
指令描述:验证两个字符串不匹配,支持普通字符串匹配和正则表达式匹配,不匹配返回 true,否则返回 false
先选使用方式
Section titled “先选使用方式”工作流支持「可视化编排」和「代码编排」两种创建方式。验证字符串不匹配 在两种方式里都能用,核心业务参数一致,区别主要是你通过界面配置,还是通过 Python 脚本配置。
| 方式 | 怎么用 | 适合人群 |
|---|---|---|
| 可视化编排(推荐先学) | 拖入「验证字符串不匹配」节点,填写待验证字符串、期望字符串、设置输出变量 | 大多数用户,零代码,适合快速搭建和调试 |
| 代码编排(Python) | 在脚本中调用 ok = bots.verifyNotMatch(actualText="...", expectedText="...", outKey="result") | 熟悉代码、需要复用脚本或批量生成流程的用户 |
第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名,方便两种方式对应。
什么时候用?
Section titled “什么时候用?”- 验证字符串不符合特定格式,用于排除不符合要求的数据。
- 使用正则表达式检查字符串是否不匹配特定模式。
- 过滤不当或危险内容,确保内容安全。
- 检测潜在的安全威胁或异常模式。
- 待验证字符串与期望字符串均已准备好,且不为空。
- 若使用正则匹配,确认「期望字符串」是有效的正则表达式。
- 普通字符串匹配区分大小写。
- 默认失败处理为「抛出异常」(
THROW_EXCEPTION),即验证不通过会中断流程;如需继续执行,改为OUTPUT_RESULT。
可视化编排:从 0 到跑通
Section titled “可视化编排:从 0 到跑通”- 在工作流画布中添加 验证字符串不匹配 节点。
- 在 待验证字符串 中填写要校验的内容,例如
hello world。 - 在 期望字符串 中填写比较内容,例如
hello。 - 如使用正则表达式,将 是否正则表达式 开启(
isRegex=true)。 - 在 将结果保存至 中填写变量名,例如
result,运行后查看结果。
| 界面名称 | 代码属性名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| 待验证字符串 | actualText | String | 是 | - | 需要进行匹配验证的字符串,不能为空,例如 hello world。 |
| 期望字符串 | expectedText | String | 是 | - | 用于匹配比较的期望字符串或正则表达式,不能为空,例如 hello。 |
| 是否正则表达式 | isRegex | Boolean | 否 | false | 高级参数。指定期望字符串是否为正则表达式,默认 false(普通字符串匹配)。 |
| False结果处理 | falseResultHandling | Enum | 否 | THROW_EXCEPTION | 高级参数。验证结果为 False 时的行为:THROW_EXCEPTION(抛出异常中断流程)、OUTPUT_RESULT(输出结果继续流程)。 |
| 界面名称 | 代码属性名 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| 将结果保存至 | outKey | Boolean | 是 | 保存验证结果,不匹配返回 true,匹配返回 false,例如变量名 result。 |
- 节点正常执行并输出布尔结果。
- 两个字符串不匹配时输出
true,符合预期。 - 后续节点能基于输出结果进行分支判断。
| 现象 | 可能原因 | 处理建议 |
|---|---|---|
| 节点抛异常中断流程 | 默认 falseResultHandling 为 THROW_EXCEPTION 且验证未通过 | 如需继续执行,改为 OUTPUT_RESULT |
| 正则匹配报错 | 期望字符串不是有效正则 | 确认正则表达式语法正确 |
| 结果与预期相反 | 大小写差异 | 普通匹配区分大小写,需精确填写,或用正则不区分大小写标志 |
| 输出变量为空报错 | 未填写 outKey | 「将结果保存至」不能为空,需指定有效变量名 |
Python 代码编排
Section titled “Python 代码编排”代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。
# 验证 "hello world" 与 "hello" 是否不匹配,返回值即布尔结果ok = bots.verifyNotMatch( actualText="hello world", expectedText="hello", isRegex=False, falseResultHandling="OUTPUT_RESULT", outKey="result",)print(ok)如果你想在工作流中通过节点动态编排指令,可使用 执行指令(XML)节点。
Q1:该指令支持哪些匹配模式?
Section titled “Q1:该指令支持哪些匹配模式?”A: 支持两种模式:普通字符串精确匹配(isRegex=false)和正则表达式模式匹配(isRegex=true)。
Q2:正则表达式匹配时需要注意什么?
Section titled “Q2:正则表达式匹配时需要注意什么?”A: 请确保「期望字符串」是有效的正则表达式,否则会抛出异常。在动态编排(XML)中还要注意特殊字符的转义。
Q3:该指令是否区分大小写?
Section titled “Q3:该指令是否区分大小写?”A: 是的。普通字符串匹配区分大小写。如需不区分大小写,可使用正则表达式的不区分大小写标志。
Q4:输出变量是否可以为空?
Section titled “Q4:输出变量是否可以为空?”A: 不可以。「将结果保存至」不能为空,必须指定一个有效的变量名来存储比较结果。
Q5:False结果处理如何使用?
Section titled “Q5:False结果处理如何使用?”A: 该参数控制验证失败时的执行行为(括号内为需传入的参数值):
抛出异常(THROW_EXCEPTION,默认):验证失败时抛出异常,中断当前流程执行。
输出结果(OUTPUT_RESULT):验证失败时输出 false 结果到 outKey,继续执行后续流程。