在Neo4J中是否有任何方法使用CONTAINS来比较不区分大小写的字符串?

时间:2017-07-20 10:31:23

标签: neo4j cypher

假设有一个节点Student,其属性为Name

MATCH (s:Student) were s.Name contains "stack" 
RETURN s.Name

输出应该是:stack,Stack,STACK等

2 个答案:

答案 0 :(得分:13)

您可以对每个的大写/小写版本进行比较,例如:

MATCH (s:Student) 
WHERE toLower(s.Name) CONTAINS toLower("stack")
RETURN s.Name

答案 1 :(得分:3)

正则表达式运算符=~通过(?i)修饰符支持不区分大小写的搜索。

此查询与您的查询等价,但不区分大小写:

MATCH (s:Student)
WHERE s.Name =~ '(?i).*stack.*'
RETURN s.Name