Я пытаюсь создать функцию поиска для проекта, который сужает элементы на основе ввода пользовательского поиска, и если он соответствует ключевым словам, указанным в отношении элементов. Для этого я сохраняю ключевые слова элемента в атрибуте data и сопоставляя запрос с этими ключевыми словами, используя шаблон RegExp.
В настоящее время я использую это выражение, которое, как я знаю, неверно и вам нужна ваша помощь:
new RegExp('\\b(' + query + ')', 'gi'))) где запрос | разделенные значения запроса, введенного пользователем (например, \\b(meat|pasta|dinner)). Это возвращает мне совпадение, даже если есть только 1 совпадение, скажем, например - meat
Просто, чтобы бросить какой-то контекст, вот небольшой пример:
Если пользователь вводит: meat pasta dinner, он должен перечислить все элементы, у которых есть ВСЕ 3 ключевых слова, указанных против них, т.е. meat pasta и dinner. Они не зависят от порядка, в котором они введены.
Можете ли вы помочь мне с выражением, которое будет соответствовать всем словам в запросе в любом порядке?