内置字符串函数¶
Nebula Graph 支持以下内置字符串函数。
Note
和 SQL 一样,nGQL 的字符索引(位置)从1
开始。但是 C 语言的字符索引是从0
开始的。
函数 | 说明 |
---|---|
int strcasecmp(string a, string b) | 比较两个字符串(不区分大小写)。当 a=b 时,返回 0,当 a>b 是,返回大于 0 的数,当 a<b 时,返回小于 0 的数。 |
string lower(string a) | 返回小写形式的字符串。 |
string toLower(string a) | 和lower() 相同。 |
string upper(string a) | 返回大写形式的字符串。 |
string toUpper(string a) | 和upper() 相同。 |
int length(string a) | 以字节为单位,返回给定字符串的长度。 |
string trim(string a) | 删除字符串头部和尾部的空格。 |
string ltrim(string a) | 删除字符串头部的空格。 |
string rtrim(string a) | 删除字符串尾部的空格。 |
string left(string a, int count) | 返回字符串左侧count 个字符组成的子字符串。如果count 超过字符串 a 的长度,则返回字符串 a。 |
string right(string a, int count) | 返回字符串右侧count 个字符组成的子字符串。如果count 超过字符串 a 的长度,则返回字符串 a。 |
string lpad(string a, int size, string letters) | 在字符串 a 的左侧填充letters 字符串,并返回size 长度的字符串。 |
string rpad(string a, int size, string letters) | 在字符串 a 的右侧填充letters 字符串,并返回size 长度的字符串。 |
string substr(string a, int pos, int count) | 从字符串 a 的指定位置pos 开始(不包括pos 位置的字符),提取右侧的count 个字符,组成新的字符串并返回。 |
string substring(string a, int pos, int count) | 和substr() 相同。 |
string reverse(string) | 逆序返回字符串。 |
string replace(string a, string b, string c) | 将字符串 a 中的子字符串 b 替换为字符串 c。 |
list split(string a, string b) | 在子字符串 b 处拆分字符串 a,返回一个字符串列表。 |
string toString() | 将任意数据类型转换为字符串类型。 |
int hash() | 获取任意对象的哈希值。 |
Note
如果参数为NULL
,则输出结果是未定义的。
substr()
和substring()
的返回说明¶
- 字符索引(位置)从
0
开始。
- 如果
pos
为 0,则返回整个字符串。
- 如果
pos
大于最大字符索引,则返回空字符串。
- 如果
pos
是负数,则返回BAD_DATA
。
- 如果省略
count
,则返回从pos
位置开始到字符串末尾的子字符串。
- 如果
count
为 0,则返回空字符串。
- 使用
NULL
作为任何参数会出现错误。
openCypher 兼容性
- 在 openCypher 中,如果字符串
a
为null
,会返回null
。 - 在 openCypher 中,如果
pos
为 0,会返回从第一个字符开始count
个字符的子字符串。 - 在 openCypher 中,如果
pos
或count
为null
或负整数,会出现错误。
最后更新:
March 7, 2023