我已经阅读了有关SO的各种答案以及neo4j的帮助页面。但是,我不能让我的通配符匹配工作。例如,如果我输入密码查询
MATCH (author:Author )-[:WROTE]->(article:Article)
WHERE article.id =~ 'Art10526689' RETURN author, article.date
我得到了正确的答案。但是,如果我放入查询
MATCH (author:Author )-[:WROTE]->(article:Article)
WHERE article.id =~ "Art1052668*" RETURN author, article.date
我没有得到任何回报。我使用'''因为似乎lucene可能是敏感的,'=〜'因为它被建议它比简单地做(article:Article {id:'Art1052668*'})
更好,尽管这也不起作用。
像往常一样,任何帮助都将深表感谢!
问候,理查德
答案 0 :(得分:2)
8*
实际上意味着匹配8
和0..infinite更多8s。如果您只想将文章ID中的9
替换为单个字符,那么您将使用.
字符。如果您希望在0..infinite
之后使用8
个字符,那么您将使用Art1052668.*
。您也可以使用(?i)
添加不区分大小写,请参阅下面的示例...
MATCH (author:Author )-[:WROTE]->(article:Article)
WHERE article.id =~ "(?i)Art1052668.*"
RETURN author, article.date