解析
本页面概述了 Cypher® 如何解析输入的 STRING
。
Cypher 解析器接受任意输入的 STRING
。本页面详细介绍了哪些字符被视为有效输入的一般规则。
在 Cypher 中使用 Unicode
Unicode 通常可以转义为 \uxxx
。例如,以下查询使用 Unicode u00B0
来搜索包含度数符号 º
的任何食谱描述。
在
STRING
匹配中使用 UnicodeMATCH (r:Recipe)
WHERE r.description CONTAINS "\u00B0"
RETURN r
有关 STRING
字面量、名称和正则表达式转义规则的其他文档可以在这里找到
Cypher 使用的 Unicode 版本取决于运行的 JVM 版本。
Neo4j 版本 | JVM 合规性 | Unicode 版本 |
---|---|---|
3.x |
Java SE 8 平台规范 |
Unicode 6.2 |
4.x |
Java SE 11 平台规范 |
Unicode 10.0 |
5.x |
Java SE 17 平台规范 |
Unicode 13.0 |
5.14 |
Java SE 17 和 Java SE 21 平台规范 |
Unicode 13.0 和 Unicode 15.0 |
支持的空白字符
空白字符可用作关键字之间的分隔符,没有语义意义。以下 Unicode 字符被视为空白字符:
描述 | 包含的 Unicode 字符列表 |
---|---|
Unicode 通用类别 Zp |
|
Unicode 通用类别 Zs |
|
Unicode 通用类别 Zl |
|
水平制表符 |
|
换行符 |
|
垂直制表符 |
|
换页符 |
|
回车符 |
|
文件分隔符 |
|
组分隔符 |
|
记录分隔符 |
|
单元分隔符 |
|
可以连续使用多个空白字符,其效果与使用单个空白字符相同。
以下示例查询使用垂直制表符 (\u000B
) 作为 RETURN
关键字和变量 m
之间的空白字符
MATCH (m) RETURN\u000Bm;