正则表达式:简单的搜索正则表达式?

问题描述:

我需要一个正则表达式,它可以帮助我搜索数据库。正则表达式:简单的搜索正则表达式?

应该能够做到:

  1. 在单词搜索。例如:ELL =>您好,黄釉,Mellt,...
  2. 近义词:例如:金=>持有,golt,成本,...

这是可以做到用正则表达式?

如果是这个正则表达式是怎么样的?

问候

+1

什么样的数据库?什么样的语言可以让你搜索数据库? – nhahtdh 2012-07-23 10:31:21

+0

这与此有关吗?这是原始的线程。看到底部。我只需要放置一个正则表达式。 http://*.com/questions/11609697/expressjs-search-query-api据我所知mongoosejs没有全文搜索,搜索选项 – bodokaiser 2012-07-23 10:32:55

+0

这是相关的,因为正则表达式在所有的语言是不一样的/工具。如果我们知道您正在使用的技术,我们可能会建议其他更好的方法来解决您的问题。 – nhahtdh 2012-07-23 10:36:51

  1. 通常会通过LIKE操作来完成使用通配符:

    WHERE column LIKE '%ell%' 
    
  2. 可以用字符串相似性测度来完成,如Levenshtein距离。 Here是MySQL作为存储过程的实现。然而,对于几乎每个字符串相似度算法,“黄金”和“成本”相差甚远。

+0

有没有像MongoDB一样的东西? – bodokaiser 2012-07-23 10:37:57

这是非常普遍的问题。我只能推荐简单的解决方案:

让有你说的第一个例子:

$your_root = "el" 

则:

$string =~ /\w*$your_root\w*/ 

匹配 '^ h EL LO',“Y EL LO '还'iafbi342b el erger64'