在Neo 3.4.7中将节点属性与子字符串集合进行匹配

时间:2018-09-27 13:30:16

标签: neo4j cypher spring-data-neo4j

给出一个字符串列表作为输入参数,我需要找到所有节点,其中节点名称​​包含输入参数字符串之一。

到目前为止,

部分解决方案:

MATCH (nodes:NodeLabel)
  WHERE any(x IN nodes.nodeName WHERE x IN ['string part I', 'string part II', 'string part III', 'string part IV'])
RETURN nodes;

缺少魔法:

... WHERE node.nodeName IN ~ ['string part I', 'string part II', ...]

实际上,我无法说服INCONTAINS或正则表达式=~ '.*substring.*'一起使用,以区分大小写。你能指导我正确的方向吗?

1 个答案:

答案 0 :(得分:3)

MATCH (nodes:NodeLabel)
WHERE ANY (x IN ['string part I', 'string part II', 'string part III', 'string part IV'] WHERE nodes.nodeName =~ x) 
RETURN nodes

应该做到这一点。