我有这种搜索方法
def self.search(search)
where("titulo LIKE ?", "([a-zA-Z0-9]*)[ X]*#{search}")
end
现在不承认任何事情。我怀疑它没有认识到REGEX。
但我找不到如何在where子句
中使用正则表达式的任何答案有人知道吗?
答案 0 :(得分:2)
<强> PostgreSQL的强>
在Postgresql中使用regexp的关键字是SIMILAR TO
。
def self.search(search)
where("titulo SIMILAR TO ?", "([a-zA-Z0-9]*)[ X]*#{search}")
end
<强> Mysql的强>
如果您使用的是Mysql,则关键字为REGEXP
。
def self.search(search)
where("titulo REGEXP ?", "([a-zA-Z0-9]*)[ X]*#{search}")
end
如果你想要更好的答案并且可能有助于你的正则表达,那么知道你想要做什么会很好。例如,您期待的结果是什么等等......