有没有办法在Cypher中执行部分匹配?

时间:2018-04-12 22:17:09

标签: neo4j cypher

例如,如果'name'属性的值为“iPhone 7”且我的查询字词为“iPhone 8”,我也希望它匹配。

match (n) WHERE n.name ~= $name ($name = 'iPhone 8')

如果'name'是'iPhone 7',我想要返回true。通常,如果两个字符串很大程度上匹配,我希望它们匹配:

“aabcde”匹配“cdef”:cde匹配,但'contains'功能不起作用。

如何在Cypher中至少匹配这两个例子?这有可能吗?

1 个答案:

答案 0 :(得分:2)

该具体示例可以使用// some-template.hbs {{component-with-button model=model openModal=(action 'openModal') }} // components/component-with-button.js Component.extend({ init() { this._super(...arguments); if (this.get('model.conditionalCheck')) { this.get('openModal')(); } } }); 。另请参阅STARTS WITH。正则表达式会影响性能。

来自WHERE Clauses

  

STARTS WITH运算符用于在字符串开头执行区分大小写的匹配。

CONTAINS
  

返回'Peter'节点的名称和年龄,因为他的名字以'Pet'开头。