Regex 在neo4j中使用正则表达式

Regex 在neo4j中使用正则表达式,regex,neo4j,cypher,Regex,Neo4j,Cypher,我试图在一个cypherWHERE子句中使用正则表达式。我希望匹配节点的属性Text包含特定单词的节点,将其作为单词而不是其一部分 MATCH (n:) WHERE n.Text =~ '\bword\b' return n; 尽管我的图中存在包含单词“word”的节点,但此查询不会返回任何内容。cypher是否允许使用标准正则表达式?其正则表达式实现是否存在限制?您的查询中存在3个问题: (n:)应该是(n),因为您没有指定标签 反斜杠必须由前面的反斜杠转义 正则表达式需要匹配整个属性值(我

我试图在一个cypher
WHERE
子句中使用正则表达式。我希望匹配节点的属性
Text
包含特定单词的节点,将其作为单词而不是其一部分

MATCH (n:) WHERE n.Text =~ '\bword\b' return n;

尽管我的图中存在包含单词“word”的节点,但此查询不会返回任何内容。cypher是否允许使用标准正则表达式?其正则表达式实现是否存在限制?

您的查询中存在3个问题:

  • (n:)
    应该是
    (n)
    ,因为您没有指定标签
  • 反斜杠必须由前面的反斜杠转义
  • 正则表达式需要匹配整个属性值(我假设您的测试值相当长)
  • 此查询应适用于以下情况:

    MATCH (n)
    WHERE n.Text =~ '.*\\bword\\b.*'
    RETURN n;
    
    请参阅此处以获取与