Учитывая, что у меня есть строка, такая как
"Donald Trump <donald@trump.com>" "Art Job <art@job.com>"
Как найти каждую строку, содержащую "donald@trump.com", используя MongoDB в Rails?
Спасибо
Из документации :
search_string = params['search'] # Constructor syntax coll.find({"name" => Regexp.new(search_string)}) # Literal syntax coll.find({"name" => /#{search_string}/})
Осторожно, хотя ... Вы не можете использовать индекс с этим запросом, поскольку ваше регулярное выражение не привязано к началу строки.
Вы можете выполнять такой поиск только с помощью регулярных выражений:
http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-RegularExpressions
В вашем случае вы не сможете выполнять эффективный поиск, если не денормализуете свои данные ихраните свои адреса электронной почты в выделенном атрибуте документа.
Не имею понятия о Ruby, но каждый драйвер должен иметь поддержку регулярных выражений.