本文介绍AGE的字符串函数。
replace
replace()返回一个字符串,其中原始字符串中指定字符串的所有出现都被另一个(指定的)字符串替换。
语法
replace(original, search, replace)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
search | 指定原始字符串中要被替换的字符串的表达式。 |
replace | 指定替换字符串的表达式。 |
注意事项
如果任何参数为
null,则返回null。如果在
original中未找到search,则返回original。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN replace('hello', 'l', 'w')
$$) as (str_array agtype);返回结果如下:
str_array
-----------
"hewwo"
(1 row)split
split()返回一个字符串列表,该列表是通过给定分隔符匹配来分割原始字符串的结果。
语法
replace(original, split_delimiter)返回值
一个包含Agtype字符串的Agtype列表。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
split_delimiter | 用于分割原始字符串的字符串。 |
注意事项
split(null, splitDelimiter)和split(original, null)均返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN split('one,two', ',')
$$) as (split_list agtype);返回结果如下:
split_list
----------------
["one", "two"]
(1 row)left
left()返回一个字符串,该字符串包含原字符串最左边指定数量的字符。
语法
left(original, length)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
length | 一个正整数的表达式。 |
注意事项
left(null, length)和left(null, null)均返回null。left(original, null)将会引发错误。如果
length不是正整数,将会引发错误。如果
length超过original的长度,则返回original。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN left('Hello', 3)
$$) as (new_str agtype);返回结果如下:
new_str
---------
"Hel"
(1 row)right
right()返回一个字符串,包含原字符串最右侧指定数量的字符。
语法
right(original, length)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
length | 一个正整数的表达式。 |
注意事项
right(null, length)和right(null, null)均返回null。right(original, null)将会引发错误。如果
length不是正整数,将会引发错误。如果
length超过original的长度,则返回original。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN right('hello', 3)
$$) as (new_str agtype);返回结果如下:
new_str
---------
"llo"
(1 row)substring
substring()返回原始字符串的一个子串,从基于 0 的索引开始,长度为指定值。
语法
substring(original, start [, length])返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
start | 表示子串开始位置的表达式。 |
length | 可选,一个正整数,表示从原始表达式中返回的字符数量。 |
注意事项
start使用基于0的索引。如果省略了
length,函数将返回从start指定的位置开始到original结束的子串。如果
original是null,则返回null。如果
start或length是null或负整数,则会引发错误。如果
start是0,子串将从original的开头开始。如果
length是0,将返回空字符串。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN substring('hello', 1, 3), substring('hello', 2)
$$) as (sub_str1 agtype, sub_str2 agtype);返回结果如下:
sub_str1 | sub_str2
----------+----------
"ell" | "llo"
(1 row)rTrim
rTrim()返回去除尾部空格的原始字符串。
语法
rTrim(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
rTrim(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN rTrim(' hello ')
$$) as (right_trimmed_str agtype);返回结果如下:
right_trimmed_str
-------------------
" hello"
(1 row)lTrim
lTrim()返回去除了前导空白字符的原始字符串。
语法
lTrim(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
lTrim(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN lTrim(' hello ')
$$) as (left_trimmed_str agtype);返回结果如下:
left_trimmed_str
------------------
"hello "
(1 row)trim
trim()返回去除尾部空格的原始字符串。
语法
trim(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
trim(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN trim(' hello ')
$$) as (trimmed_str agtype);返回结果如下:
trimmed_str
-------------
"hello"
(1 row)toLower
toLower()返回原字符串的小写形式。
语法
toLower(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
toLower(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN toLower('HELLO')
$$) as (lower_str agtype);返回结果如下:
lower_str
-----------
"hello"
(1 row)toUpper
toUpper()返回原字符串的大写形式。
语法
toUpper(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
toUpper(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN toUpper('hello')
$$) as (upper_str agtype);返回结果如下:
upper_str
-----------
"HELLO"
(1 row)reverse
reverse()返回一个字符串,其中原始字符串中所有字符的顺序都被反转。
语法
reverse(original)返回值
一个Agtype字符串。
参数
名称 | 描述 |
original | 原始字符串的表达式。 |
注意事项
reverse(null)返回null。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN reverse("hello")
$$) as (reverse_str agtype);返回结果如下:
reverse_str
-------------
"olleh"
(1 row)toString
toString()将整数、浮点数或布尔值转换为字符串。
语法
toString(expression)返回值
一个Agtype字符串。
参数
名称 | 描述 |
expression | 原始数字、布尔值或字符串的表达式。 |
注意事项
toString(null)返回null。如果
expression是字符串,则会原样返回。
示例
SELECT *
FROM cypher('graph_name', $$
RETURN toString(11.5), toString('a string'), toString(true)
$$) as (float_to_str agtype, str_to_str agtype, bool_to_str agtype);返回结果如下:
float_to_str | str_to_str | bool_to_str
--------------+------------+-------------
"11.5" | "a string" | "true"
(1 row)