函数 | 说明 |
---|---|
~= | 可以用作 If 或 Case 语句的一部分。如果 Arg2 正则表达式字符串与 Arg1 字符串匹配,则返回 true。 示例: If( "aab" ~= "a+" , "true", "false" ) Case when "aba" ~= ".a+$" then "true" else "false" end |
Concatenate(Arg1, ...) | 将所有参数连接(附加)成一个字符串。如果指定了一个参数,则结果为所有行的连接。如果指定了多个参数,则连接每个行。参数可以为任意类型,但将被转换为字符串。结果为字符串类型。Null 参数被忽略。 示例: Concatenate("April ", 20+1, "st") → "April 21st" Concatenate(null, "Ape")→ "Ape" Concatenate (null, null) → (Empty) |
Find(Arg1, Arg2, Arg3) | 返回字符串 Arg1 在 Arg2 中出现位置的索引。Arg3 也可指示返回的匹配项。如果未提供第三个参数,则返回第一个匹配项。如果未找到匹配项,则将返回 0。 该搜索区分大小写。前两个参数为字符串类型,第三个参数和结果为整数类型。如果 Arg1 是空字符串,则将返回 0。 示例: Find("lo", "Hello") → 4 Find("a", "Hello") → 0 Find("", "Hello") → 0 Find("", null) → (Empty) If(Find("Pri 1", [Col1])>0, "Important", "Not important") Find("a", "ababab") → 1 Find("a", "ababab", 2) → 3 Find("a", "ababab", 10) → 0 |
Left(Arg1, Arg2) | 返回字符串 Arg1 的前 Arg2 个字符。Arg1 和结果为字符串类型。Arg2 为实数类型,但只使用整数部分。如果 Arg2 > Arg1 的长度,则将返回整个字符串。如果 Arg2 为负数,则将从 Arg1 字符串的右侧删除 Arg2 数量的字符。 示例: Left("Daddy", 1) → "D" Left("Daddy", 3.99) → "Dad" Left("Daddy", 386) → "Daddy" Left("Daddy", -1) → "Dadd" |
Len(Arg1) | 返回 Arg1 的长度。Arg1 为字符串类型,结果为整数类型。 示例: Len("Hello") → 5 Len(null) → (Empty) |
Lower(Arg1) | 返回转换为小写的 Arg1。Arg1 和结果为字符串类型。 |
Mid(Arg1, Arg2, Arg3) | 返回 Arg1 中,从索引 Arg2 开始且具有 Arg3 个字符长度的子字符串。Arg1 和结果为字符串类型。Arg2 和 Arg3 为实数类型,但只使用整数部分。如果 Arg2 > Len(Arg1),则将返回空字符串。否则,如果 Arg2+Arg3 > Len(Arg1),则 Arg3 将被调整为 1+Len(Arg1)-Arg2。如果 Arg2 或 Arg3 为负数,或者如果 Arg2 为零,则将返回错误。 示例: Mid("Daddy", 2, 3) → "add" Mid("Daddy", 386, 4) → "" Mid("Daddy", 4, 386) → "dy" Mid("Daddy", -1, 2) → (Empty) Mid("Daddy", 2, -1) → (Empty) |
MostCommon(Arg1) | 返回指定列的最常用的值。如果多个值同样常用,则使用第一个值。 示例: MostCommon([Column]) |
NameDecode(Arg1) | 用解码后的字符替换所有子字符串代码。 TIBCO Spotfire® 中的列名称存储为 UTF-16 编码字符串,而 TIBCO Spotfire® Statistics Services 中的变量名称则根据与 [.0-9a-zA-Z] 匹配的 8 位 ASCII 字符或附在重音符中的 ASCII 字符串构建。因此,发送至 TIBCO Spotfire® Statistics Services 的列名称必须进行编码。从 TIBCO Spotfire® Statistics Services 获得的列名称由内置数据函数输出处理程序进行自动解码。此函数可以用于解码尚未进行自动解码的结果。 示例: NameDecode("Column %02D") |
NameEncode(Arg1) | 编码字符串中的字符,以便让字符串仅包含与正则表达式 [.0-9a-zA-Z] 匹配的字符。 TIBCO Spotfire® 中的列名称存储为 UTF-16 编码字符串,而 TIBCO Spotfire® Statistics Services 中的变量名称根据与 [.0-9a-zA-Z] 匹配的 8 位 ASCII 字符构建。因此,发送至 TIBCO Spotfire® Statistics Services 的列名称必须进行编码。通过内置数据函数输入处理程序将数据发送至 TIBCO Spotfire® Statistics Services 时,会自动完成此操作。如果您需要通过某些其他方式(例如通过文档属性)提供列名称输入,可能需要在应用数据函数之前使用此函数来编码列名称。 示例: NameEncode("Column £") |
Repeat | 将重复某字符串指定次数。 示例: Repeat("Hello", 2) → "HelloHello" |
Right(Arg1, Arg2) | 返回字符串 Arg1 的后 Arg2 个字符。Arg1 和结果为字符串类型。Arg2 为实数类型,但只使用整数部分。如果 Arg2 > Arg1 的长度,则将返回整个字符串。 如果 Arg2 为负数,则将从 Arg1 字符串的左侧删除 Arg2 数量的字符。 示例: Right("Daddy", 1) → "y" Right("Daddy", 3.99) → "ddy" Right("Daddy", 386) → "Daddy" Right("Daddy", -1) → "addy" |
RXExtract(Arg1, Arg2,Arg3) | 返回与正则表达式 (Arg2) 匹配的字符串 (Arg1) 部分。Arg3 决定存在多个匹配时使用哪个匹配。 示例: RXExtract([Column], "l+", 1) RXExtract("Parallel", "l+", 1) → "ll" RXExtract("Parallel", "l+", 2) → "l" |
RXReplace(Arg1, Arg2,Arg3, Arg4) | 根据正则表达式替换子字符串。搜索 Arg1 中的 Arg2 正则表达式,并使用 Arg3 进行替换。 Arg4 指定了用于替换的选项: “g”指定如果 Arg2 与多项匹配,则替换所有匹配项。 “i”指定比较应区分大小写。 “s”用于单行模式,指定圆点 (.) 匹配每个字符 (而不是除新行外的每个字符)。 使用计算的列时,某些字符(例如反斜线符号“\”以及参数“(”和“)”)需要进行转义才能起作用。由于括号在正则表达式中用于分组,因此如果“(”或“)”符号应该匹配,则“(”和“)”都需要转义,而且在正则表达式中使用该字符时,还需要使用双反斜杠,以便对 Spotfire 字符串和正则表达式进行转义。有关详细信息,请参见关于正则表达式语言元素的文献(例如,在 MSDN 上)。 示例: RXReplace("Hello", "L+", "LL", "i") → "HeLLo" RXReplace("3 Minor", "(\\d).*", "$1", "") → 3 RXReplace([Column with values within parenteses], "\\(89\\)", "", "") RXReplace("change\\slashdirection","\\\\","/","") → change/slashdirection |
Split(Arg1, Arg2, Arg3) | 使用 Arg2 作为分隔符,将 Arg1 中的值拆分为若干子字符串。Arg3 指定应将哪些值返回为新列。将仅返回一个列。 使用负的 Arg3 来指定,应将字符串从尾到头进行拆分,而不是从头到尾。 例如,如果使用分隔符“.”将包含值“a.b”的名称为“X”的列拆分为两部分,则 Split([X],".",1) 将返回“a”,而 Split([X],".",2) 将返回“b”。 示例: Split([Column]," ",2) Split([Column]," ",-2) Split([Column]," / ",3) |
Substitute(Arg1, Arg2,Arg3) | 使用 Arg3 替换 Arg1 中出现的所有 Arg2。该搜索区分大小写。 示例: Substitute("Test","t","ting") → "Testing" |
Substring(Arg1, Arg2,Arg3) | 返回 Arg1 中,从索引 Arg2 开始且具有 Arg3 个字符长度的子字符串。Arg1 和结果为字符串类型。Arg2 和 Arg3 为实数类型,但只使用整数部分。如果 Arg2 > Len(Arg1),则将返回空字符串。否则,如果 Arg2 + Arg3 > Len(Arg1),则 Arg3 将被调整为 1+Len(Arg1) - Arg2。如果 Arg2 或 Arg3 为负数,或者如果 Arg2 为零,则将返回错误。 示例: Substring("Daddy", 2, 3) → "add" Substring("Daddy", 386, 4) → "" Substring("Daddy", 4, 386) → "dy" Substring("Daddy", -1, 2) → (Empty) Substring("Daddy", 2, -1) → (Empty) |
Trim(Arg1) | 将删除字符串的开头和结尾的空白字符。 示例: Trim(" Example ") → "Example" |
UniqueConcatenate(Arg1) | 连接转换为字符串的唯一值。这些值根据比较运算符进行排序。 示例: UniqueConcatenate([Column]) |
Upper(Arg1) | 返回转换为大写的 Arg1。Arg1 和结果为字符串类型。 示例: Upper("hello") → "HELLO" |