用于语义库字级匹配的正则表达式



我有语义库,其中包含数据库字段,在上一列中具有可能/匹配的同义词,即商品 ID | products_id - 项目 ID | products_id - 事物 ID | products_id。

我需要在用户输入的话语结果中匹配上述字段,并让系统选择相关的数据库字段(在上述情况下为"products_id")。

问题是用户可能会提到他们选择的上述同义词,如果删除单词顺序,匹配功能可能会失败,即:

用户:给我看商品的ID。

用户:我想查看项目及其 ID。

用户:你能用ID号显示东西吗?

您能否建议在这种情况下应该使用哪种准确的正则表达式语法/组合,因为它非常费力,我正在尝试不同的方法来使其工作。到目前为止,我已经尝试了积极的展望,但不确定。

^(?=.*goods)(?=.*id).*$

尝试使用此正则表达式:

^(?=.*b(?:goods?|things?|items?)b)(?=.*bidb).*$
                                ^---place here if you want to add more

把你的话放在用烟斗(|)分隔的(...)内。注意,我使用了s?这意味着s可以存在或不存在。例如,goods?同时支持 goodgoods

试试这个在线演示

相关内容

  • 没有找到相关文章

最新更新