Mule 4中如何将单个字符串与字符串数组进行精确匹配?
Mule 4 实现单个字符串与分割后字符串数组的精确匹配
需求说明
输入JSON示例:
{"country": "India", "countries": "India,Russia,USA"}
需要判断country字段的值是否精确存在于countries字段按逗号分割后的字符串列表中,存在返回true,否则返回false。
实现方案
使用Mule 4的DataWeave 2.0表达式处理,核心逻辑是分割字符串数组后做精确匹配:
%dw 2.0 output application/json --- (payload.countries splitBy ',' map trim($)) contains payload.country
代码解释
splitBy(','):将countries的字符串按逗号分割为字符串数组map trim($):去除数组每个元素的前后空格,避免因格式问题(如"India, Russia")导致匹配失败contains:检查处理后的数组是否包含country字段的精确值,返回布尔结果
测试结果
- 输入示例JSON时,输出:
true - 若
country值改为"China",输出:false
内容的提问来源于stack exchange,提问作者Kunal Awasthi
相关产品推荐
相关产品推荐

