# 字符串函数

本节介绍用于处理和操作字符串的函数。

所有函数均可用于数据加载脚本和图表表达式，但 Evaluate 只能在数据加载脚本中使用。

使用每个函数的下拉列表可查看每个函数的简短描述和语法。单击语法描述中的函数名称可了解更多信息。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Capitalize

Capitalize() 函数将文本字符串中每个单词的第一个字符转换为大写，并将所有其他字符转换为小写。

[**Capitalize**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Capitalize.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Chr

Chr() 返回与输入整数对应的 Unicode 字符，也称为码位。

[**Chr**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Chr.htm)(int)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### CountRegEx

CountRegEx() 用于返回指定正则表达式模式在输入字符串文本中出现的次数。如果不匹配，则返回 0。

[**CountRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/CountRegEx.htm)(text, regex)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Evaluate

Evaluate() 用于确定是否可将输入文本字符串作为有效的 Qlik Sense 表达式来计算值，如果可以，则以字符串形式返回该表达式的值。如果输入字符串不是有效的表达式，则返回 NULL。

[**Evaluate**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Evaluate.htm)(expression\_text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### ExtractRegEx

ExtractRegEx() 使用指定的正则表达式模式从输入字符串表达式中提取文本。如果没有找到匹配项，函数将返回空值。

[**ExtractRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/ExtractRegEx.htm)(text, regex [, field\_no])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### ExtractRegExGroup

ExtractRegExGroup() 使用指定的复合正则表达式模式从输入字符串表达式中提取文本。使用该函数时，请在复合正则表达式中指定要使用的组。如果没有找到匹配项，函数将返回空值。

[**ExtractRegExGroup**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/ExtractRegExGroup.htm)(text, regex, group [, field\_no])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### FindOneOf

FindOneOf() 用于搜索字符串，以便从一组提供的字符中找到任意字符出现的位置。返回搜索集中任何字符的第 N 次出现的位置，其中 N 是函数的可选第三个参数。如果没有提供第三个参数，则返回第一个参数。如果未找到匹配值，则返回 0。

[**FindOneOf**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/FindOneOf.htm)(text, char\_set[, count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Hash128

Hash128() 用于返回组合输入表达式值的 128 位哈希值。结果为 22 个字符的字符串。

[**Hash128**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Hash128.htm)(expr{, expression})

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Hash160

Hash160() 返回组合输入表达式值的 160 位哈希值。结果为 27 个字符的字符串。

[**Hash160**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Hash160.htm)(expr{, expression})

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Hash256

Hash256() 返回组合输入表达式值的 256 位哈希值。结果为 43 个字符的字符串。

[**Hash256**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Hash256.htm)(expr{, expression})

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Index

Index() 用于搜索字符串，以便找到所提供子字符串第 n 次出现的开始位置。可选的第三个参数用于提供值 n，如果省略，则值为 1。如果为负值，则从字符串的结尾开始搜索。字符串中的位置从左至右从 1 开始编号。

[**Index**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm) (text, substring[, count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### IndexRegEx

IndexRegEx() 搜索输入字符串，并返回指定正则表达式模式第 n 次出现的起始位置。可选的第三个参数 count 用于提供 n 的值，如果省略，则值为 1。字符串中的位置从左至右从 1 开始编号。如果没有找到匹配项，函数返回 0。

[**IndexRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IndexRegEx.htm)(text, regex [, count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### IndexRegExGroup

ExtractRegExGroup() 使用指定的复合正则表达式模式从输入字符串表达式中提取文本。使用该函数时，请在复合正则表达式中指定要使用的组。如果没有找到匹配项，函数将返回空值。

[**IndexRegExGroup**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IndexRegExGroup.htm)(text, regex, group [, count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### IsJson

IsJson() 测试指定字符串是否包含有效的 JSON（JavaScript 对象表示法）数据。您还可以验证特定的 JSON 数据类型。

[**IsJson**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsJson.htm)(json [, type])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### IsRegEx

IsRegEx() 返回指定文本是否为有效正则表达式。

[**IsRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsRegEx.htm)(expr [, debug)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### JsonGet

JsonGet() 返回 JSON（JavaScript 对象表示法）数据字符串的路径。数据必须是有效的 JSON，但可以包含额外的空格或换行符。

[**JsonGet**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonGet.htm)(json, path)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### JsonSet

JsonSet() 修改包含 JSON（JavaScript 对象表示法）数据的字符串。它可以使用路径指定的新位置设置或插入 JSON 值。数据必须是有效的 JSON，但可以包含额外的空格或换行符。

[**JsonSet**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonSet.htm)(json, path, value)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### KeepChar

KeepChar() 返回一个字符串，该字符串由第一个字符串中与第二个字符串中的字符匹配的任何字符组成。该函数要区分大小写。

[**KeepChar**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/KeepChar.htm)(text, keep\_chars)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Left

Left() 用于返回特定字符串，其中包含输入字符串的第一个 (leftmost) 字符，其中字符数量由第二个参数决定。

[**Left**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Left.htm)(text, count)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Len

Len() 用于返回输入字符串的长度。

[**Len**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Len.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### LevenshteinDist

LevenshteinDist() 返回两个字符串之间的 Levenshtein 距离。它定义为将一个字符串更改为另一个字符串所需的最小单字符编辑次数（插入、删除或替换）。 该函数用于模糊字符串比较。

[**LevenshteinDist**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/LevenshteinDist.htm)(text1, text2)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Lower

Lower() 用于将输入字符串中的所有字符转换为小写字符。

[**Lower**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Lower.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### LTrim

LTrim() 用于返回由任何前导空格剪裁的输入字符串。

[**LTrim**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/LTrim.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### MatchRegEx

MatchRegEx() 比较输入字符串 (text) 与一个或多个正则表达式 (regex)。它返回匹配的正则表达式模式的数字位置。仅当正则表达式的评估与整个文本输入匹配时，才返回匹配响应。如果没有找到匹配项，函数返回 0。

[**MatchRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/MatchRegEx.htm)(text, regex1 [ , regex2,...regexN])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Mid

Mid() 返回从第二个参数“start”定义的字符位置开始的输入字符串的一部分，并返回第三个参数“count”定义的字符数量。如果省略“count”，则返回输入字符串的剩余部分。输入字符串的第一个字符的编号为 1。

[**Mid**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Mid.htm)(text, start[, count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Ord

Ord() 返回字符串第一个字符的数字（ASCII 或 Unicode）值。此函数可用于根据字符串的底层字符代码对其进行评估或比较，例如，在对包含非标准字符的字符串进行排序或筛选时。

[**Ord**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Ord.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### PurgeChar

PurgeChar() 返回包含输入字符串（“text”）中的字符，但不包括第二个参数（“remove\_chars”）中的字符的字符串。

[**PurgeChar**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/PurgeChar.htm)(text, remove\_chars)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Repeat

Repeat() 用于构成特定字符串，其中包含重复的输入字符串，重复次数由第二个参数定义。

[**Repeat**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Repeat.htm)(text[, repeat\_count])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Replace

Replace() 用于使用另一个子字符串替换输入字符串内出现的所有给定子字符串后，返回一个字符串。该函数为非递归函数，从左至右工作。

[**Replace**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Replace.htm)(text, from\_str, to\_str)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### ReplaceRegEx

ReplaceRegEx() 在替换输入字符串和指定正则表达式模式之间的一个或多个匹配后，返回一个字符串。取代匹配文本的文本在 to\_str 参数中指定。函数从左到右运行，但如果指定一个负 occurrence 值，函数将从右到左读取。

[**ReplaceRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/ReplaceRegEx.htm)(text, regex, to\_str [, occurrence])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### ReplaceRegExGroup

ReplaceRegExGroup() 在替换输入字符串和指定的复合正则表达式模式之间的一个或多个匹配后，返回一个字符串。取代匹配文本的文本在 to\_str 参数中指定。函数从左到右运行，但如果指定一个负 occurrence 值，函数将从右到左读取。

[**ReplaceRegExGroup**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/ReplaceRegExGroup.htm)(text, regex, to\_str, group [, occurrence])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Right

Right() 用于返回特定字符串，其中包含输入字符串末尾（最右边）的字符，其中字符数量由第二个参数决定。

[**Right**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Right.htm)(text, count)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### RTrim

RTrim() 用于返回由任何尾部空格剪裁的输入字符串。

[**RTrim**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/RTrim.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### SubField

SubField() 用于从父字符串字段提取子字符串组成部分，其中原始记录字段由两个或更多用分隔符分隔的部分构成。

[**SubField**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/SubField.htm)(text, delimiter[, field\_no ])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### SubFieldRegEx

SubFieldRegEx() 使用指定的正则表达式模式作为分隔符，从输入字符串表达式中提取文本。如果没有找到匹配项，函数将返回空值。

[**SubFieldRegEx**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/SubFieldRegEx.htm)(text, regex\_delimiter [, field\_no])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### SubStringCount

SubStringCount() 用于返回指定子字符串在输入字符串文本中出现的次数。如果不匹配，则返回 0。

[**SubStringCount**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/SubStringCount.htm)(text, substring)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### TextBetween

TextBetween() 用于返回输入字符串中作为分隔符出现在指定字符之间的文本。

[**TextBetween**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/TextBetween.htm)(text, delimiter1, delimiter2[, n])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Trim

Trim() 用于返回由任何前导和尾部空格剪裁的输入字符串。

[**Trim**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Trim.htm)(text)

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/string-functions.htm)

#### Upper

Upper() 用于将输入字符串中表达式所定义的所有文本字符转换为大写。忽略数字和符号。

[**Upper**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Upper.htm)(text)