В некоторых ситуациях regexp может помочь. Вот пример, который я проверил в Oracle, и он работает.
select * from my_table where REGEXP_LIKE (search_column, 'value1|value2')
Но с ним существует ряд недостатков:
Действительно. Возможно, вы не понимаете, что "/"
не совпадает с /
, а у последнего нет семантики для конкатенации (например, +
для строк) как издалека, как я знаю (но я могу ошибаться). Последний синтаксис является встроенным / сокращенным конструктором для класса RegExp
. Тем не менее, это легко исправить, просто создайте регулярное выражение с помощью new RegExp
.
В вашем случае я бы рекомендовал использовать конструкцию mongodb $regex
:
Items.find({"description": {$regex: ".*" + variable + ".*"}}).fetch();
Подробнее см. документацию на $regex
.
Ответ - каждое ключевое слово по поиску
Items.find({"description": {
'$regex': new RegExp(variable, "i")
}}).fetch();
И если вам нужно, чтобы это было нечувствительным к регистру, вы должны использовать регулярное выражение следующим образом:
new RegExp(".*"+keyword+".*", "i")