跳转到内容
搜索文档

字符串函数

最后更新 查看 MarkdownAgent 设置

Cloudflare Pipelines 标量函数实现基于 Apache DataFusion(通过 Arroyo),本文档源自 DataFusion 函数参考。

ascii

返回字符串中第一个字符的 ASCII 值。

ascii(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数chr

bit_length

返回字符串的位长度。

bit_length(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数length, octet_length

btrim

从字符串的开头和结尾修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串开头和结尾的所有空白。

btrim(str[, trim_str])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • trim_str: 要从输入字符串开头和结尾修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。

相关函数ltrim, rtrim

别名

  • trim

char_length

length 的别名。

character_length

length 的别名。

concat

连接多个字符串。

concat(str[, ..., str_n])

参数

  • str: 要连接的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • str_n: 后续要连接的字符串列或字面量字符串。

相关函数concat_ws

concat_ws

使用指定分隔符连接多个字符串。

concat(separator, str[, ..., str_n])

参数

  • separator: 插入到连接字符串之间的分隔符。
  • str: 要连接的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • str_n: 后续要连接的字符串列或字面量字符串。

相关函数concat

chr

返回具有指定 ASCII 或 Unicode 码值的字符。

chr(expression)

参数

  • expression: 包含要操作的 ASCII 或 Unicode 码值的表达式。 可以是常量、列或函数,以及算术或字符串运算符的任何组合。

相关函数ascii

ends_with

测试字符串是否以子字符串结尾。

ends_with(str, substr)

参数

  • str: 要测试的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • substr: 要测试的子字符串。

initcap

将输入字符串中每个单词的首字母大写。 单词由非字母数字字符分隔。

initcap(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数lower, upper

instr

strpos 的别名。

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • substr: 要搜索的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

left

从字符串左侧返回指定数量的字符。

left(str, n)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • n: 要返回的字符数。

相关函数right

length

返回字符串中的字符数。

length(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

别名

  • char_length
  • character_length

相关函数bit_length, octet_length

lower

将字符串转换为小写。

lower(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数initcap, upper

lpad

用另一个字符串填充字符串左侧以达到指定长度。

lpad(str, n[, padding_str])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • n: 要填充到的字符串长度。
  • padding_str: 用于填充的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。 默认为空格。

相关函数rpad

ltrim

从字符串开头修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串开头的所有空白。

ltrim(str[, trim_str])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • trim_str: 要从输入字符串开头修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。

相关函数btrim, rtrim

octet_length

返回字符串的字节长度。

octet_length(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数bit_length, length

repeat

返回输入字符串重复指定次数的字符串。

repeat(str, n)

参数

  • str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • n: 重复输入字符串的次数。

replace

将字符串中指定子字符串的所有出现替换为新子字符串。

replace(str, substr, replacement)

参数

  • str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • substr: 要在输入字符串中替换的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • replacement: 替换子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

reverse

反转字符串的字符顺序。

reverse(str)

参数

  • str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

从字符串右侧返回指定数量的字符。

right(str, n)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • n: 要返回的字符数。

相关函数left

rpad

用另一个字符串填充字符串右侧以达到指定长度。

rpad(str, n[, padding_str])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • n: 要填充到的字符串长度。
  • padding_str: 用于填充的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。 默认为空格。

相关函数lpad

rtrim

从字符串末尾修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串末尾的所有空白。

rtrim(str[, trim_str])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • trim_str: 要从输入字符串末尾修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。

相关函数btrim, ltrim

split_part

根据指定分隔符拆分字符串,并返回指定位置的子字符串。

split_part(str, delimiter, pos)

参数

  • str: 要拆分的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • delimiter: 用于拆分的字符串或字符。
  • pos: 要返回部分的位置。

starts_with

测试字符串是否以子字符串开头。

starts_with(str, substr)

参数

  • str: 要测试的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • substr: 要测试的子字符串。

strpos

返回指定子字符串在字符串中的起始位置。 位置从 1 开始。 如果子字符串不存在于字符串中,函数返回 0。

strpos(str, substr)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • substr: 要搜索的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

别名

  • instr

substr

从字符串中的特定起始位置提取指定数量的字符子字符串。

substr(str, start_pos[, length])

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • start_pos: 子字符串的起始字符位置。 字符串中第一个字符的位置为 1。
  • length: 要提取的字符数。 如果未指定,则返回起始位置之后的字符串其余部分。

translate

将字符串中的字符转换为指定的翻译字符。

translate(str, chars, translation)
  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
  • chars: 要转换的字符。
  • translation: 翻译字符。翻译字符仅替换 chars 字符串中相同位置的字符。

to_hex

将整数转换为十六进制字符串。

to_hex(int)

参数

  • int: 要转换的整数表达式。 可以是常量、列或函数,以及算术运算符的任何组合。

trim

btrim 的别名。

upper

将字符串转换为大写。

upper(str)

参数

  • str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。

相关函数initcap, lower

uuid

返回每行唯一的 UUID v4 字符串值。

uuid()

overlay

返回从指定位置和指定长度被另一个字符串替换后的字符串。 例如,overlay('Txxxxas' placing 'hom' from 2 for 4) → Thomas

overlay(str PLACING substr FROM pos [FOR count])

参数

  • str: 要操作的字符串表达式。
  • substr: 用于替换 str 部分的字符串。
  • pos: str 中要替换的起始位置。
  • count: 从 str 起始位置要替换的字符数。如果未指定,将使用 substr 长度。

levenshtein

返回两个给定字符串之间的 Levenshtein 距离。 例如,levenshtein('kitten', 'sitting') = 3

levenshtein(str1, str2)

参数

  • str1: 用于与 str2 计算 Levenshtein 距离的字符串表达式。
  • str2: 用于与 str1 计算 Levenshtein 距离的字符串表达式。

substr_index

返回 str 中分隔符 delim 出现 count 次之前的子字符串。 如果 count 为正数,则返回最后一个分隔符左侧的所有内容(从左计数)。 如果 count 为负数,则返回最后一个分隔符右侧的所有内容(从右计数)。 例如,substr_index('www.apache.org', '.', 1) = wwwsubstr_index('www.apache.org', '.', -1) = org

substr_index(str, delim, count)

参数

  • str: 要操作的字符串表达式。
  • delim: 在 str 中查找以拆分 str 的字符串。
  • count: 搜索分隔符的次数。可以是正数或负数。

find_in_set

如果字符串 str 在由 N 个子字符串组成的字符串列表 strlist 中,则返回 1 到 N 范围内的值。 例如,find_in_set('b', 'a,b,c,d') = 2

find_in_set(str, strlist)

参数

  • str: 要在 strlist 中查找的字符串表达式。
  • strlist: 字符串列表是由 , 字符分隔的子字符串组成的字符串。

这篇文档对您有帮助吗?