标签: fuzzy-search

通过正则表达式进行模糊匹配

如何通过正则表达式进行“模糊搜索”?

例如,文本“hplaptop”可能是以下任意一项的模糊匹配:

xxx hp laptop
hp xxx laptop
laptop xxxxx hp
Run Code Online (Sandbox Code Playgroud)

regex fuzzy-search

8
推荐指数
1
解决办法
1万
查看次数

是否可以在 Windows 10 git-bash 中使用 fzf(命令行模糊查找器)?

我下载了 .exe 文件并将其放入我的 PATH 变量中。fzf似乎在命令提示符下工作。但我想在 git-bash 中使用它。当我fzf在 git-bash 中使用时,它似乎开始了,但没有任何反应。

任何意见将是有益的。我试图为自己节省一些按键。

windows bash fuzzy-search git-bash fzf

8
推荐指数
1
解决办法
2729
查看次数

从Set中删除与条件不匹配的项目

对于学校项目,目标是将查询字符串模糊匹配到Song对象内的歌词字符串.整体数据结构是一个独特单词的TreeMap,与歌词中包含该单词的歌曲组合在一起.

我有包含查询字符串的初步匹配歌曲集.这里的转折是我必须根据匹配部分中的字符数(包括空格)为每个结果歌曲分配一个等级.例如,搜索"她爱你"会在匹配中返回:

"......她爱你......"甲壳虫乐队,等级= 13
"......她只是爱你......"Bonnie Raitt,等级= 18
"......她爱我,好吧......"猫王普雷斯利,排名= 23

我用来对结果进行排序是:

for (int i=0; i<lyrics.length; i++) {
  if (lyrics[i].equals(query[0])) { //got the start point
  start=i; //adjust the start index point

  //loop through lyrics from start point
  for (int j=1; j<query.length; j++) {
    if (lyrics[j].equals(query[query.length-1])) {
        end=i; //found the last word
    }

    //if next lyric word doesn't match this query word
    if (!lyrics[i+j].equals(query[j])) {

    //advance loop through lyrics. when a match is found, i is adjusted to
    //the match index
    for (int …
Run Code Online (Sandbox Code Playgroud)

java algorithm search fuzzy-search

7
推荐指数
1
解决办法
298
查看次数

Lucene模糊搜索客户名称和部分地址

我正在通过所有现有问题的帖子,但无法得到一些相关的东西.

我有人数名,姓,地址1,地址2,国家代码,出生日期的数百万条记录的文件 - 我想每天检查我的客户名单(我的客户名单也每天更新和文件也每天更新).

对于名字和姓氏,我想模糊匹配(可能是lucene fuzzyquery/levenshtein距离90%匹配),对于剩余字段国家和出生日期我想要完全匹配.

我是Lucene的新手,但通过查看帖子的数量,看起来很可能.

我的问题是:

  • 我该如何索引输入文件?我需要在FN,LN,country,DOB的组合上构建索引并使用索引进行搜索
  • 我怎么能在这里使用Lucene的模糊查询?

还有其他方法可以实现吗?

lucene fuzzy-search

7
推荐指数
1
解决办法
5813
查看次数

Objective-c:快速模糊搜索匹配

有没有人知道Objective-c的模糊搜索匹配的快速实现?(levenshtein距离算法).

我发现了这个:https://github.com/thetron/StringScore/blob/master/NSString%2BScore.m - 但不幸的是它很慢.我需要将它与大约200个字符串进行比较,并且它是连续的 - 每次键入新键击.

有任何想法吗?

search cocoa fuzzy-search objective-c levenshtein-distance

7
推荐指数
1
解决办法
4195
查看次数

模糊文件按目录搜索?

我正在尝试使用RubyMine,但有一个功能一直在削弱我的工作效率.我在Sublime中一直使用它.

假设我在视图文件夹中散布了一百个index.html.haml文件.在Sublime Text 2中,我可以/app/views/orders/index.html.haml通过点击Cmd + t 搜索,输入"order index"并按Enter键.

但到目前为止,在RubyMine中,您无法键入顺序,因为目录未包含在搜索索引中.您可以输入"index.html.haml",但随后我会看到所有索引视图,并且订单在#80附近下降.

我也非常喜欢能够输入文件名的一部分,比如每个匹配文件的第一个字母.Sublime Text 2和PeepOpen可让您轻松完成此操作; 我很想在RubyMine中拥有它.

TL:DR; 你可以在RubyMine/IntelliJ中按目录搜索文件吗?

search fuzzy-search intellij-idea rubymine

7
推荐指数
1
解决办法
2391
查看次数

可以"跳过"的模糊字符串匹配?例如"我是(.*)." 与"我在这里"的距离为0.

我正在写一个Python聊天机器人.无论技术是什么(Levenshtein,LCS,正则表达式等),我想要一个像My name is [ A ].智能足够的模式来匹配字符串,如:

My name is Tslmy.              #Distance should = 0, and groupdict()['a'] outputs "Tslmy"
My name is Tesla Tahomana.     #Distance should = 0(!), and groupdict()['a'] outputs "Tesla Tahomana"
my  naem ist tslmy .           #With a little typo, the distance = 5, and groupdict()['a'] outputs "tslmy "
Run Code Online (Sandbox Code Playgroud)

请允许我用来groupdict()['a']指代[ A ](实际上(?P<identifier>match))抓住的东西.

  • 换句话说,我正在寻找一个带有省略/跳过/空白/忽略的"Levenshtein",并挑选出已被跳过的内容.
  • 换句话说,我正在寻找一个模糊(也就是近似)正则表达式,它可以对模式不那么严格,仍然提供良好的旧groupdict(),以及"模糊"值(或"编辑距离",需要确定"与字符串"稍后"匹配的最佳模式.
    这是首选解决方案,因为groupdict()如果管理良好,它提供"足够" .
    然而,TRE库和REGEX库被发现是最接近的解决方案,似乎没有提供"模糊"值.如果这可以解决,那就更好了!

那可能吗?感谢您的关注.

更新:

我决定最终使用强大的正则表达式模块,但仍然无法获得"模糊值".

由于 …

regex fuzzy-search levenshtein-distance

7
推荐指数
1
解决办法
204
查看次数

Python模糊匹配(FuzzyWuzzy) - 保持最佳匹配

我正在尝试模糊匹配两个csv文件,每个文件包含一列相似但不相同的名称.

我的代码到目前为止如下:

import pandas as pd
from pandas import DataFrame
from fuzzywuzzy import process
import csv

save_file = open('fuzzy_match_results.csv', 'w')
writer = csv.writer(save_file, lineterminator = '\n')

def parse_csv(path):

with open(path,'r') as f:
    reader = csv.reader(f, delimiter=',')
    for row in reader:
        yield row


if __name__ == "__main__":
## Create lookup dictionary by parsing the products csv
data = {}
for row in parse_csv('names_1.csv'):
    data[row[0]] = row[0]

## For each row in the lookup compute the partial ratio
for row in parse_csv("names_2.csv"): …
Run Code Online (Sandbox Code Playgroud)

python fuzzy-search string-matching fuzzywuzzy

7
推荐指数
3
解决办法
1万
查看次数

Mongodb部分匹配

如何以一个levenshtein距离在mongodb中获取所有文档。

我有足球队的收藏。

{
    name: 'Real Madrir',
    nicknames: ['Real', 'Madrid', 'Real Madrir' ... ]
}
Run Code Online (Sandbox Code Playgroud)

与用户搜索Real MadidMaddrid或别的东西。

我想将包含昵称的所有文档返回给定搜索字符串的距离为0或1 levenshtein的所有文档。

我认为有两种方式,mongodb全文搜索或正则表达式。

那我可以写这样的正则表达式或查询吗?

谢谢。

javascript regex fuzzy-search mongodb levenshtein-distance

7
推荐指数
1
解决办法
4332
查看次数

弹性搜索中通配符和模糊查询一起使用

我正在尝试设计一个查询,其中可以一起使用通配符和模糊查询。

据我所知,query_string 用于通配符搜索,而 multi_match 可用于模糊性。

我想要一个将搜索单词的查询:-

“elast”:- 提供elastic 和elasticsearch 的结果。“elasttc”:- 还提供弹性和弹性搜索的结果。

Elasticsearch同时支持通配符和模糊查询??

提前致谢...

fuzzy-search wildcard elasticsearch

7
推荐指数
2
解决办法
5443
查看次数