neo4j正则表达式错误

时间:2017-02-21 03:05:56

标签: neo4j

我想用正则表达式查询字符串以“+”开头 我的neo4j版本是2.3.8

这是我的查询:

MATCH (n:phone_number) where n.name =~ "\+.*" RETURN n LIMIT 1

但失败了:

Invalid input '+': expected '\', ''', '"', 'b', 'f', 'n', 'r', 't',          '_', '%', UTF16 or UTF32 (line 1, column 42 (offset: 41))
"MATCH (n:phone_number) where n.name =~ "\+.*" RETURN n LIMIT 1"

1 个答案:

答案 0 :(得分:0)

这似乎是neo4j中的一个错误。此解决方法应该有效:

MATCH (n:phone_number)
WHERE n.name =~ "\\u002b.*"
RETURN n LIMIT 1;

它使用Java unicode escape序列\u002b来表示“+”字符。