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

DOORS DXL字符串多部分匹配求助:matches函数不支持复杂场景

字符串多条目部分匹配解决方案

核心逻辑

别拿整个str1去匹配str2了,先把str1里的每个[SuRS_xxx]拆出来,挨个查有没有在str2里的,只要有一个能对上就返回true。

具体改法

第一步:拆分str1成单个条目

先把str1按空格拆成单独的项,比如你的示例里:

str1_split = split(str1, " ")

拆完就得到["[SuRS_39]", "[SuRS_161]", "[SuRS_162]"]这样的列表。

第二步:挨个检查每个条目是否在str2里

把原来的if (matches(str1, str2), do...)换成遍历拆分后的条目:

// 伪代码,根据你实际用的脚本语言调整语法
foreach (item in str1_split) {
    if (str2包含item) {
        返回true;
    }
}
返回false;

不同场景的简化写法

  • 要是用Excel公式:把str1放A1,str2放B1,用这个公式就能直接判断:=SUMPRODUCT(--ISNUMBER(SEARCH(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),(ROW(INDIRECT("1:"&LEN(A1)-LEN(SUBSTITUTE(A1," ",""))+1))-1)*99+1,99)),B1)))>0,结果为TRUE就是有匹配项。
  • 要是用JavaScript:一行就能搞定:str1.split(" ").some(item => str2.includes(item))

验证你的示例

用上面的逻辑,第一个条目[SuRS_39]就能在str2里找到,直接返回true,完全符合你的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 19:42:13