对于不区分大小写的正则表达式搜索,ü和Ü或ł和Ł等字符在Neo4j中被视为完全独立的字符。
以下Cypher应该返回一个节点,但它不会:
CREATE (t:Thing { name: "Łomza Überbrew" })
MATCH (t:Thing) WHERE t.name=~'(?i)łomza überbrew' RETURN t
预计Neo4j会出现这种情况吗?使用Neo4j Enterprise-2.1.2
由于
答案 0 :(得分:3)
您需要使用不区分大小写的unicode正则表达式,而不仅仅是不区分大小写,只适用于ascii字符。而不是(?i)
使用(?ui)
:
CREATE (t:Thing { name: "Łomza Überbrew" })
MATCH (t:Thing) WHERE t.name=~'(?ui)łomza überbrew' RETURN t