You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ADF中使用通配符匹配文件名配置If条件活动

ADF管道If条件活动文件名匹配配置方法

前置检查

首先确认你使用的Get Metadata活动已经在「字段列表」中勾选了Child items选项,确保输出结果包含路径下所有文件/文件夹的名称、类型信息。你贴出的输出存在JSON格式书写错误,ADF实际返回的childItems是标准结构的对象数组,每个元素自带name(名称)、type(类型,值为File/Folder)属性,不影响后续逻辑配置。

If条件活动配置

直接在If条件活动的表达式输入框中填入以下表达式即可,注意把表达式里的你的Get Metadata活动名称替换成你管道里实际的Get Metadata活动命名:

@greater(length(filter(activity('你的Get Metadata活动名称').output.childItems, @or(contains(item().name, 'qbx_abc'), contains(item().name, 'data_new'), equals(item().type, 'File')))),0)

表达式逻辑说明

  • 用filter()函数遍历Get Metadata返回的所有子项,筛选时同时校验规则:项类型为文件(排除同名文件夹干扰),且文件名满足「包含qbx_abc」「包含data_new」两个条件的任意一个就算匹配
  • 用length()统计筛选后符合规则的文件总数
  • 用greater()判断总数是否大于0,只要存在至少1个符合规则的文件,条件就返回true,流程自动进入If活动的True分支,也就是你需要的下一执行阶段。

特殊场景适配

如果你是在ForEach遍历单个文件的循环内做判断,不需要遍历整个文件列表,直接用简化版表达式即可:

@or(contains(item().name, 'qbx_abc'), contains(item().name, 'data_new'))

补充说明:如果需要做严格大小写匹配,给contains()函数传入第三个参数true即可,比如contains(item().name, 'qbx_abc', true),默认配置下ADF的字符串匹配不区分大小写。

内容的提问来源于stack exchange,提问作者harshith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 14:03:18