テキスト関数
式に使用できるテキスト関数のリストを示します。
関数 | 説明 |
---|---|
~= | If または Case ステートメントの一部として使用できます。Arg2 の正規表現文字列が Arg1 の文字列に一致する場合は true を返します。 例: If( "aab" ~= "a+" , "true", "false" ) Case when "aba" ~= ".a+$" then "true" else "false" end |
Concatenate(Arg1, ...) | すべての引数を連結 (付加) して文字列にします。1 つの引数が指定された場合は、すべてのローが連結されます。複数の引数が指定された場合は、各ローが連結されます。引数には任意の型を指定できますが、文字列に変換されます。結果は文字列型です。NULL の引数は無視されます。 例: Concatenate("April ", 20+1, "st") → "April 21st" Concatenate(null, "Ape")→ "Ape" Concatenate (null, null) → (空) |
Find(Arg1, Arg2, Arg3) | Arg2 における文字列 Arg1 の最初の出現について、インデックス番号を返します。Arg3 は返す一致をオプションで示します。3 つ目の引数が指定されない場合、最初の一致が返されます。一致が見つからない場合には、0 を返します。 検索キーワードは、大文字と小文字が区別されます。最初の 2 つの引数の型は文字列で、3 つ目の引数と結果の型は整数です。Arg1 が空文字列の場合には、0 を返します。 例: Find("lo", "Hello") → 4 Find("a", "Hello") → 0 Find("", "Hello") → 0 Find("", null) → (空) 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 が負の場合、Arg2 の文字数は Arg1 文字列の右側から削除されます。 例: 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) → (空) |
Lower(Arg1) | Arg1 を小文字に変換して返します。Arg1 および結果は文字列型です。 |
Mid(Arg1, Arg2, Arg3) | Arg2 で指定したインデックスで始まる Arg3 で指定した文字分の Arg1 の部分文字列を返します。Arg1 および結果は文字列型です。Arg2 と Arg3 は実数型ですが、整数部だけが使用されます。Arg2 > Len(Arg1) の場合には、空文字列を返します。また、Arg2+Arg3 > Len(Arg1) の場合には、Arg3 は 1+Len(Arg1)-Arg2 に調整されます。Arg2 または Arg3 が負の場合、あるいは Arg2 が 0 の場合には、エラーを返します。 例: Mid("Daddy", 2, 3) → "add" Mid("Daddy", 386, 4) → "" Mid("Daddy", 4, 386) → "dy" Mid("Daddy", -1, 2) → (空) Mid("Daddy", 2, -1) → (空) |
MostCommon(Arg1) | 指定されたカラムの最大の共通値を返します。同一の値がいくつかある場合は、最初の値が使用されます。 例: MostCommon([Column]) |
NameDecode(Arg1) | すべての部分文字列をデコードされた文字で置き換えます。 TIBCO Spotfire® のカラム名は、UTF-16 でエンコードされた文字列として格納されます。 例: NameDecode("Column %02D") |
NameEncode(Arg1) | 正規表現 [.0-9a-zA-Z] に一致する文字のみが文字列に含まれるように、文字列の文字をエンコードします。 TIBCO Spotfire® のカラム名は、UTF-16 でエンコードされた文字列として格納されます。 例: NameEncode("Column £") |
Repeat | 指定された回数だけ文字列を繰り返します。 例: Repeat("Hello", 2) → "HelloHello" |
Right(Arg1, Arg2) | 文字列 Arg1 の最後の Arg2 文字を返します。Arg1 および結果は文字列型です。Arg2 は実数型ですが、整数部だけが使用されます。Arg2 > 「Arg1 の長さ」の場合は、文字列全体を返します。 Arg2 が負の場合、Arg2 の文字数は Arg1 文字列の左側から削除されます。 例: Right("Daddy", 1) → "y" Right("Daddy", 3.99) → "ddy" Right("Daddy", 386) → "Daddy" Right("Daddy", -1) → "addy" |
RXExtract(Arg1, Arg2, Arg3) |
文字列 (Arg1) から、正規表現 (Arg2) に一致する部分を返します。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 (最後の例では、バックスラッシュが 2 回エスケープされる必要があります。Spotfire 文字列で 1 回と、正規表現で 1 回です。) |
Split(Arg1, Arg2, Arg3) | Arg2 を区切り記号として使用して、Arg1 の値を複数の部分文字列に分割します。Arg3
はどの値を新しいカラムとして返すかを指定します。1 つのカラムのみが表示されます。 文字列の先頭から末尾ではなく、末尾から先頭に向かって分割する場合は、負の Arg3 を使用します。 たとえば、"X" というカラムに "a.b" という値が含まれていて、区切り記号 "." を使用して 2 つの部分に分割される場合、Split([X],".",1) は "a" を返し、Split([X],".",2) は "b" を返します。 例: Split([Column]," ",2) Split([Column]," ",-2) Split([Column]," / ",3) |
Substitute(Arg1, Arg2, Arg3) | Arg1 に含まれるすべての Arg2 を Arg3 に置換します。検索キーワードは、大文字小文字が区別されます。 例: Substitute("Test","t","ting") → "Testing" |
Substring(Arg1, Arg2, Arg3) | Arg2 で指定したインデックスで始まる Arg3 で指定した文字分の Arg1 の部分文字列を返します。Arg1 および結果は文字列型です。Arg2 と Arg3 は実数型ですが、整数部だけが使用されます。Arg2 > Len(Arg1) の場合には、空文字列を返します。また、Arg2 +
Arg3 > Len(Arg1) の場合には、Arg3 は 1+Len(Arg1) -
Arg2 に調整されます。Arg2 または Arg3 が負の場合、あるいは Arg2 が 0 の場合には、エラーを返します。 例: Substring("Daddy", 2, 3) → "add" Substring("Daddy", 386, 4) → "" Substring("Daddy", 4, 386) → "dy" Substring("Daddy", -1, 2) → (空) Substring("Daddy", 2, -1) → (空) |
Trim(Arg1) | 文字列の先頭と末尾の空白文字を削除します。 例: Trim(" Example ") → "Example" |
UniqueConcatenate(Arg1) | 文字列に変換された固有値を連結します。これらの値は比較演算子に従って順序付けされます。 例: UniqueConcatenate([Column]) |
Upper(Arg1) | Arg1 を大文字に変換して返します。Arg1 および結果は文字列型です。 例: Upper("hello") → "HELLO" |