如何在Ruby on rails环境中使用Mongoid进行通配符搜索? [英] How do you do wildcard searches with Mongoid in a Ruby on Rails environment?
本文介绍了如何在Ruby on rails环境中使用Mongoid进行通配符搜索?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Mongoid文档只提供了一个执行通配符搜索的示例:
Person.where(first_name: /^d/i)
这将查找名字以"d"开头的所有人员。
/^
和/i
代表什么?
如何找到其名字在字符串中间有"NA"的所有人?例如,此查询将找到"Jonathan",因为"na"是整个字符串的子字符串。
是否有包含此信息的网站或指南?
推荐答案
您需要使用它来查找名称中包含"NA"的人员。
Person.where(first_name: /na/i)
对于您的示例:
Person.where(first_name: /^d/i)
^
表示"行的开始"。此正则表达式将匹配首字母为"d"的所有字符串。/i
表示"匹配不区分大小写"。因此它将同时匹配"d"和"D"。
注意:只有前缀正则表达式(前面有^
)才能使用索引。
是否有包含此信息的网站或指南?
这里是my favourite。
这篇关于如何在Ruby on rails环境中使用Mongoid进行通配符搜索?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文