问题标签 [exact-match]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
solr - 可以在 Solr 中混合使用 Exact Match 和 StopwordsFilter
我正在改写我之前的问题。希望有人能够提供帮助。
我目前有一个仅进行完全匹配的 solr 实现。
因此,“THE TEST”的搜索词组将仅匹配“THE TEST”
但是,我也实现了模式替换过滤器。
因此“TOM AND JERRY”的搜索词组将与“TOM & JERRY”匹配。
现在,我们要添加停用词过滤器。我们想在索引期间删除“THE”。
因此,“TEST”的搜索短语将与“THE TEST”匹配。
我将分词器从 KeywordTokenizerFactory 更改为 Whitespacetokenizerfactory。然而,搜索结果炸了。
虽然“TEST”现在与“THE TEST”匹配。它还与“EVEL TEST”等相匹配。
有没有办法避免测试短语与等级测试等匹配?
非常感谢您的帮助。谢谢。
以下是我当前的索引分析器
solr - SOLR 精确匹配提升了包含精确匹配的文本
我找不到更好的标题,如果可能的话,我希望稍后根据您的最终建议进行更改。
我的问题:
我有一个音乐艺术家的数据库。这些看起来像这样:“dr. dre feat. akon”、“eminem & dr. dre”、“dr. dre feat. ll cool j”、“dr. dre”、“dr. dre feat. eminem & skylar gray” . 我们只有两个字段:id 和 name。
在默认模式 solr 核心上,我运行以下查询:“q=dr.dre”,结果还可以,但并不完美,如下所示:
- 博士。德雷壮举。阿孔
- 阿姆和博士 dre
- 博士。德雷壮举。会很酷j
- 博士。dre
- ...
请注意,他们得到了完全相同的分数。
我想要的是第一个结果是“dre 博士”,然后是所有其他结果,如下所示:
- 博士。博士<<--博士。dre 是第一位的
- 阿姆和博士 dre
- 博士。德雷壮举。会很酷j
- 博士。德雷壮举。阿孔
- ...
我如何实现这一目标?(过滤器、标记器、复制字段等并不重要。我无法更改 solr 内的代码,正如我在其他一些论坛上所建议的那样)
谢谢。
bash - 如何在没有 grep -w 的情况下从文件中提取完全匹配
我有一个文件 A,其中包含一个列,其中包含如下字符串列表:
我想使用文件A中的字符串来grep文件B中包含它们的行,文件B如下所示:
在这种情况下,我正在等待与文件 A 中的字符串完全匹配的输出,如下所示:
我用过grep -wf A B
,效果很好,但问题是我的真实文件非常重,而且过程非常昂贵。有人有任何不同的想法来获得相同的结果,但使用其他命令行?
python - 如何找到完全匹配的索引?
我知道如何使用 python 来报告字符串中的完全匹配:
如何报告完全匹配的索引?(在这种情况下,0 和 14)
php - 输入和正则表达式模式之间的 PHP 完全匹配
我正在尝试建立一个检查,通过正则表达式可靠地评估输入 ($f_username) 是否是 MAC 地址,因为它可能需要不同的语法。找到匹配项后。这应该在没有分隔符的情况下转换为小写。
该函数在匹配和转换大多数输入时工作正常,但会错误地匹配更长的输入......例如 11-22-33-44-55-66-77-88 将被转移到 11-22-33-44-55- 66 并且 $match 设置为 true...
这应该导致函数转到“其他分支”,因为它不是模式的完全匹配......但是它包含一个匹配......有人知道如何正确匹配这个吗?
感谢您抽出宝贵时间阅读本文,并提前感谢您的任何答案:)
javascript - JQuery 实时搜索精确匹配
我正在使用我修改为在按 Enter 后运行的实时搜索(我有一个非常大的表格,如果在 keyUp 上完成它会导致文本输入滞后),我正在尝试找到一种方法来使其准确搜索,而不仅仅是一个类似的。原因是我有一列商店编号从 1 到超过 7000,如果我只输入“1”,我会得到一大堆结果。我是 JQuery 的新手,我尝试过使用它,但我觉得我无处可去。任何和所有的帮助表示赞赏。
这是代码:
c# - 使用 XPath 精确匹配字符串
我编写了一个 xpath 来使用 selenium c# 从网页中抓取元素。
这是 XPath
这工作正常,直到我发现重复的match text
. 所以,在一个网页上,我有两个元素match text
一个与match text
另一个与match text 9000
现在,我只需要执行 click for match text
。所以,我写了以下 XPath
请注意,匹配文本在网页上具有前导空格。上面的 Xpath 没有用。我已经用Fire Path
Firefox 的扩展检查了这个。
谁能给我推荐一个 Xpath,它可以找到与match text
. 假设匹配文本可以包含任意数量的前导空格。
我也尝试过使用,normalize-space()
但也没有用。这是我尝试过的
我发现了一些关于 SO 的问题,但没有帮助。
感谢你的帮助。
更新:
感谢您的回答,但没有一个对我有用。
我也提到了这两个字符串
- 匹配文本
- 匹配文本 9000
在我的代码中,我将在 foreach 循环中迭代它们。所以,我不能保证我会得到 9000 作为第二个元素。
我已经尝试了使用 Firefox 的 FirePath 扩展提到的所有答案,但网页上没有选择任何内容。
如前所述,我在匹配文本之前有前导空格。
HTML:(匹配 xpath)
这是我页面中的 HTML,其中包含
字符。前面有两个
字符和一个额外的空格match text
。我正在抓取元素的站点是客户端站点。我不能说他修改他的 HTML 就可以了。
search - 具有完整索引数据的查询的 Apache solr 完全匹配
我正在使用 solr 4.8。我有一个非常基础的问题。假设我有一个字段包含一个字符串,例如文档的“I am in class”,第二个文档的值为“class”。现在我想用存储的字符串完全查询。即如果用户搜索类,它应该返回第二个文档,因为这两个字符串是相等的。它不应该返回第一个文档,因为我的查询和它的值不完全匹配。
我想在 apache solr 中实现相同的目标。如何实施。
elasticsearch - ElasticSearch:使用 edge_ngram 和模糊性进行部分/精确评分
在 ElasticSearch 中,我试图使用模糊的 edge_ngram 获得正确的评分。我希望完全匹配的分数最高,而子匹配的分数较低。以下是我的设置和评分结果。
在使用名字“Michael”进行 POST 后,我会进行如下查询,其中包含更改“Michael”、“Michae”、“Micha”、“Mich”、“Mic”和“Mi”。
我的分数结果是:
如您所见,分数结果并未达到预期。我希望“Michael”得分最高,“Mi”得分最低
任何帮助,将不胜感激!
search - 在 Algolia 索引中搜索准确的术语
我想通过属性的确切值过滤索引。我想知道 Algolia 提供了哪些可能性。
查询索引始终会导致搜索子字符串,这意味着搜索词abc
将始终匹配属性值包含的任何对象abc
。我想要实现的是abc
仅abc
作为属性值的搜索(在这种情况下,我有特定的属性要搜索)。
我想出的一种可能性是标记,这似乎不是最好的思考方式。
编辑
我想我也可以使用构面过滤器。我考虑了不同的利弊,无法提出任何一个立场高于另一个立场的论点。