2016-06-14 135 views
0

gem pg_serch是否支持通过正则表达式进行搜索,如果有人可以给出一个使用pg_search的正则表达式的例子。我无法在文档中找到它。我正在寻找类似的东西pg_search正则表达式搜索

Model.regex_search(/.*find_string$/) pg_search可以吗?

回答

1

不,它不应该也不应该。

pg_search利用Postgres的全文搜索扩展,所以它已经在某种程度上对索引数据进行正则表达式搜索。

如果您想对表中的文本数据执行纯正则表达式搜索,则应使用PG的模式匹配。可以使用WHERE子句中的运算符~(区分大小写)和~*(不区分大小写)来匹配POSIX正则表达式。

Model.where("column ~* ?", "regex") 

如果您打算这样做,我强烈建议您在这些列上创建索引。