Neo4j:使用Cypher(模糊)的Lucene短语匹配

Neo4j:使用Cypher(模糊)的Lucene短语匹配,lucene,neo4j,cypher,Lucene,Neo4j,Cypher,是一组被双引号包围的单词,如“hello dolly”。 我希望能够完成这个Lucene模糊查询的CYPHER等价物: “你好,多莉”~0.1 这将找到我的“hello dolly”节点: START n=node:node\u auto\u index(“name:\“hello dolly\”~0.1”)返回n 这并不是: START n=node:node\u auto\u index(“name:\“hella dolly\”~0.1”)返回n 按空格将搜索短语拆分为单个词确实有效: S

是一组被双引号包围的单词,如“hello dolly”。 我希望能够完成这个Lucene模糊查询的CYPHER等价物:

“你好,多莉”~0.1

这将找到我的
“hello dolly”
节点:

START n=node:node\u auto\u index(“name:\“hello dolly\”~0.1”)返回n

这并不是:

START n=node:node\u auto\u index(“name:\“hella dolly\”~0.1”)返回n

按空格将搜索短语拆分为单个词确实有效:

START n=node:node\u auto\u index(“name:hella~0.1和name:dolly~0.1”)返回n

但是,我的数据可能包含类似于
“HelloDolly”
的字符串,我希望该字符串与我的
“hello dolly”
节点成功匹配

编辑: 其他一些尝试:


START n=node:node\u auto\u index(“name:hello\\dolly”)返回n
----->可以工作(找到我的“hello dolly”节点,但不模糊


START n=node:node\u auto\u index(“name:hello\\dolly~0.00001”)返回n
--->不起作用(找不到任何东西)

试试这个:

START n=node:node_auto_index("name:hella\\ dolly~0.1") RETURN n

这是一个老问题,但这可能会帮助其他人:

START n=node:node_auto_index('name:"hella dolly"~0.1') RETURN n
找不到“hello dolly”节点。我已在问题编辑中添加了更多测试。