我目前有一个Angular material-ui表,该表带有自定义过滤器和材料芯片,可以通过添加多个关键字进行搜索。 (https://stackblitz.com/edit/angular-material-filter-with-chips)。我希望能够为用户的查询提供更多相关的返回值,例如
data
,则第一个结果应为Data Science 1
,因为data
与课程标题匹配。science
,然后按Enter,然后键入data
,则第一个结果应为Data Science 1
,因为它的课程名称和说明都匹配。 我将如何修改过滤谓词以支持这种类型的过滤?
我正在考虑为每门课程添加一个整数相关性字段,并根据标题与描述是否匹配来对每门课程评分,然后在返回布尔值之前按谓词中的相关性对所有课程进行排序。是否有更健壮的方法来解决此问题,因为这将需要为添加的每个查询词计算相关性,并重新计算是否删除了一个词,并且我认为实现可能会有些毛病?
谢谢!