Как сделать точное совпадение слов в Neo4j?

В Neo4j, мы можем сделать запрос MySQL «лайк» с

ех.
Если узел «Темп» есть столбец «Col» и значение «Это было в мировой войне 1945 года»;

Если мы ищем по «WOR»

и где запрос

temp.col =~  '(?i).*'. $search_value . '.*'

Тогда результаты идут. Но я хочу, чтобы результаты приходили только тогда, когда искали мир с любым изменением случая.

Как сделать точное совпадение слов?

Т.е. если мы ищем строку, то в начале и конце слова должен быть пробел или не должно быть никаких символов.

0

Решение

=~ '(?i).*'. $search_value . '.*'

= ~ = Регулярный поиск
(? i) = без учета регистра
. * = Совпадение с чем угодно
$ search_value = Ваша строка
. * = Совпадение с чем угодно

Если вы хотите сопоставить целые слова, и вы хотите соответствовать регистру, и если это целое слово может появиться в середине предложения, вы можете попробовать:

=~'.*\\b' . $search_value . '\\b.*'

\b является сопоставителем слов

Обновить: "\\b" двойные косые черты необходимы для экранирование для регулярных выражений.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector