如何从标准件列表提取与输入规格最接近的上下邻近匹配项
标准件紧邻规格匹配功能实现
核心功能要求
- 从内置标准件库中,提取与用户输入规格紧邻的次小、次大两个最接近匹配项
- 匹配示例:输入规格参数
900 x 1000 x 60 FF时,系统自动从库内定位到维度差最小的对应上下邻标准件 - 仅同类型规格可参与匹配,后缀标识不一致的标准件直接排除出候选范围
落地实现步骤
- 规格结构化解析
提前把库内所有标准件规格、用户实时输入的规格字符串做统一拆解:按分隔符切分字符串后,按顺序提取所有数值段组成维度数组,提取末尾的字母标识作为规格类型后缀。以示例输入为例,拆解后得到维度数组[900, 1000, 60],类型后缀FF。 - 候选池初筛
过滤掉所有类型后缀和输入不一致的标准件,仅保留同后缀规格进入后续匹配计算,减少无效运算。 - 邻项匹配计算
维度比对优先级按长、宽、厚度的顺序从高到低设置,前序维度匹配结果一致时再比对后续维度,匹配规则如下:- 次小项:所有位置的维度数值均不大于输入对应维度值,且各维度与输入值的差值总和最小的标准件
- 次大项:所有位置的维度数值均不小于输入对应维度值,且各维度与输入值的差值总和最小的标准件
- 结果返回
存在符合规则的次小/次大项时直接返回对应规格,无符合条件的邻项时对应位置返回空值即可。
内容的提问来源于stack exchange,提问作者Mowgli
相关产品推荐
相关产品推荐

