使用简单的查询:
MATCH (c:Customer)
where c.customerRemark =~ '(?ui).*test.*'
RETURN c
当你有一个单行文本时,绝对正常。当您在数据记录中插入新换行符时,输入查询失败并且不显示数据记录,尽管单词test在数据字段中。 看起来cypher看不到断线后面的什么? 任何人都有分享经验或想法如何避免这种情况?
预期结果应该是所有带有" test"在现场customerRemarks中应该找到,无论是1行还是多行 - 因为这是一个通常有很多文本的字段。
我在Linux和Windows服务器上使用Neo4j 3.1.1和PHP 5.4。
由于 乙
****编辑**** 以下是创建两个节点的两个语句:
CREATE (c:Customer {nodeID:1}) SET c.customerRemark = "This is a test - Node 1" return c
CREATE (c:Customer {nodeID:2}) SET c.customerRemark = "This is a test with a linebreak inside - Node 2 Here comes text:
here was a linebreak" return c
声明:
MATCH (c:Customer) where c.customerRemark =~ '(?ui).*Node.*' RETURN c
仅使用节点1代替节点1和2