> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sync.cdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 文字列フォーマッタ

このページにあるフォーマッタのリストは、文字列データを操作します。すべてのフォーマッタの構文は同じです。以下に示します。

`[attr | formatter1() | formatter2()]`

属性（変数）は（垂直パイプ文字 - `|` を使用して）左から右にフォーマッタにパイプされます。文字列フォーマッタにパイプされる属性は、常に、操作が実行される生の文字列である必要があります。例えば、属性`myString` を`hello` に設定すると、以下のコードは`lo` の値を返します。

`[myString | substring(4)]`

## allownull()

属性が存在しない場合はNULL、属性が存在する場合はフォーマッタは値を返します。

## arrayfind(substring)

属性配列で文字列が見つかったときのインデックスを返します。インデックスは1ベースです。

* **searchstring**：元の値で検索する文字列。

## base64decode()

属性値をbase-64 デコードされた文字列に変換します。

## base64encode()

属性値をbase-64 エンコードされた文字列に変換します。

## capitalize()

最初の文字のみを大文字にした元の属性値を返します。

## capitalizeall()

すべての単語の最初の文字を大文字にした元の属性値を返します。

## center(integer\_width\[, character])

最初のパラメータで指定された幅の文字列の中心の属性値を返します。パディングは、2番目のパラメータで指定されたfillchar を使用して行われます。

* **width**：出力文字列の合計幅。
* **character**：パディングに使用される文字（オプション）。文字が指定されていない場合、デフォルトの文字はスペースです。

## contains(value\[, ifcontains]\[, ifnotcontains])

属性値がパラメータ値を含む場合は`true` の値（または`ifcontains`）を返し、それ以外の場合は`false` の値（または`ifnotcontains`）を返します。

* **value**：属性値から検索する文字列。
* **ifcontains**：属性値がパラメータ値を含む場合に返される値（オプション）。
* **ifnotcontains**：属性値がパラメータ値を含まない場合に返される値（オプション）。

## count(substring)

最初のパラメータで指定された部分文字列の属性値の出現回数を返します。

* **substring**：属性値で検索する部分文字列。

## currency(\[integer\_count])

通貨の値としてフォーマットされた数値を返します。

* **count**：小数点以下の表示桁数を指定する数値（オプション）。デフォルトの数は`2` です。

## decimal(\[integer\_count])

10進数としてフォーマットされた数値を返します。

* **count**：小数点以下の表示桁数を示す数値（オプション）。デフォルトの数は`2` です。

## def(\[notexists]\[, exists])

属性の存在を確認します。属性が存在しない場合、指定されたパラメータの値が返されます。

* **notexists**：属性値が存在しない場合に返す値（オプション）。
* **exists**：元の属性値が存在する場合に返す値（オプション）。値が指定されていない場合、属性の元の値が返されます。

## empty(value)

属性値が空の場合は指定された値を返し、それ以外の場合は元の属性値を返します。

* **value**：属性が空の場合に使用される値。

## endswith(substring\[, iftrue]\[, iffalse])

属性値が指定されたパラメータで終わるかどうかを決定します。属性値がその値で終わる場合は`true` の値（または`iftrue`）を返し、それ以外の場合は`false` の値（または`iffalse`）を返します。

* **substring**：最後に期待される文字列。
* **iftrue**：属性値がパラメータ値で終わる場合に返される値（オプション）。
* **iffalse**：属性値がパラメータ値で終わらない場合に返される値（オプション）。

## equals(value\[, ifequals]\[, ifnotequals])

属性値を最初のパラメータの値と比較します。値が等しい場合は`true` の値（または`ifequals`）、それ以外の場合は`false` の値（または`ifnotequals`）を返します。

* **value**：属性値と比較する文字列。
* **ifequals**：属性値が最初のパラメータで表される値と等しい場合に返される値（オプション）。
* **ifnotequals**：属性値が最初のパラメータで表される値と等しくない場合に返される値（オプション）。

## expandtabs(\[integer\_width])

属性値にあるすべてのタブ文字をスペースに置き換えます。パラメータで指定されたタブサイズが指定されていない場合は、デフォルトの8文字のタブサイズが使用されます。

* **width**：タブの幅（オプション）。デフォルト値は`8` です。

## expr(expression)

数式を評価します。

* **expression**：式。

## find(substring\[, integer\_startindex])

属性値で部分文字列が見つかったときのゼロベースの最小のインデックスを返します。

* **substring**：属性値で検索する文字列。
* **startindex**：検索を開始するインデックス（オプション）。

## getlength()

属性値の文字数を返します。

## guid()

グローバルに一意の識別子（Id）の値を生成して返します。このフォーマッタに渡される属性は無視されます。そのため、デフォルトアイテム`_` をフォーマッタインプットとして使用するのが一般的です（例：`[_ | guid()]`）。

## ifequal(value\[, ifequals]\[, ifnotequals])

属性値を最初のパラメータの値と比較します。値が等しい場合は`true` の値（または`ifequals`）、それ以外の場合は`false` の値（または`ifnotequals`）を返します。

* **value**：属性値と比較する文字列。
* **ifequals**：属性値が最初のパラメータで表される値と等しい場合に返される値（オプション）。
* **ifnotequals**：属性値が最初のパラメータで表される値と等しくない場合に返される値（オプション）。

## ifmatches(value\[, ifmatch]\[, ifnotmatch])

属性値が最初のパラメータと一致する場合は`true` の値（または`ifmatch`）を返し、それ以外の場合は`false` の値（または`ifnotmatch`）を返します。

* **value**：属性値と比較される値。
* **ifmatch**：属性値がパラメータ値と一致する場合に返される値（オプション）。
* **ifnotmatch**：属性値がパラメータ値と一致しない場合に返される値（オプション）。

## iftrue(\[iftrue]\[, iffalse])

属性値の値をチェックします。属性値がtrue の場合は`true` の値（または`iftrue`）を返し、それ以外の場合は`false` の値（または`iffalse`）を返します。

* **iftrue**：属性値がtrue の場合に返される値（オプション）。
* **iffalse**：属性値がfalse の場合に返される値（オプション）。

## implode(\[separator])

複数の値を区切り文字で区切られた文字列に分解します。

* **separator**：区切り文字（オプション）。

## insert(integer\_index, string)

指定したインデックスに指定した文字列を挿入します。

* **index**：新しい文字列が挿入される元の値の位置のゼロベースのインデックス。
* **string**：元の値に挿入する文字列。

## isalpha(\[ifalpha]\[, ifnotalpha])

属性値のすべての文字がアルファベットで、少なくとも1つの文字がある場合は`true` の値（または`ifalpha`）を返し、それ以外の場合は`false` の値（または`ifnotalpha`）を返します。

* **ifalpha**：属性値がアルファベットの場合に返される値（オプション）。
* **ifnotalpha**：属性値がアルファベットでない場合に返される値（オプション）。

## isalphabetic(\[ifalpha]\[, ifnotalpha])

属性値のすべての文字がアルファベットで、少なくとも1つの文字がある場合は`true` の値（または`ifalpha`）を返し、それ以外の場合は`false` の値（または`ifnotalpha`）を返します。

* **ifalpha**：属性値がアルファベットの場合に返される値（オプション）。
* **ifnotalpha**：属性値がアルファベットでない場合に返される値（オプション）。

## isalphanum(\[ifalphanum]\[, ifnotalphanum])

属性値のすべての文字が英数字で、少なくとも1つの文字がある場合は`true` の値（または`ifalphanum`）を返し、それ以外の場合は`false` の値（または`ifnotalphanum`）を返します。

* **ifalphanum**：属性値がアルファベットまたは数字のみを含む場合に返される値（オプション）。
* **ifnotalphanum**：属性値が非アルファベットまたは非数字のみを含む場合に返される値（オプション）。

## isalphanumeric(\[ifalphanum]\[, ifnotalphanum])

属性値のすべての文字が英数字で、少なくとも1つの文字がある場合は`true` の値（または`ifalphanum`）を返し、それ以外の場合は`false` の値（または`ifnotalphanum`）を返します。

* **ifalphanum**：属性値がアルファベットまたは数字のみを含む場合に返される値（オプション）。
* **ifnotalphanum**：属性値が非アルファベットまたは非数字のみを含む場合に返される値（オプション）。

## isdigit(\[ifnum]\[, ifnotnum])

属性値のすべての文字が数字で、少なくとも1つの文字がある場合は`true` の値（または`ifnum`）を返し、それ以外の場合は`false` の値（または`ifnotnum`）を返します。

* **ifnum**：属性値が数値の場合に返される値（オプション）。
* **ifnotnum**：属性値が数値でない場合に返される値（オプション）。

## islower(\[iflower]\[, ifnotlower])

属性値のすべての文字が小文字で、少なくとも1つの文字がある場合は`true` の値（または`iflower`）を返し、それ以外の場合は`false` の値（または`ifnotlower`）を返します。

* **iflower**：属性値が小文字の場合に返される値（オプション）。
* **ifnotlower**：属性値が小文字でない場合に返される値（オプション）。

## isnumeric(\[ifnum]\[, ifnotnum])

属性値のすべての文字が数字で、少なくとも1つの文字がある場合は`true` の値（または`ifnum`）を返し、それ以外の場合は`false` の値（または`ifnotnum`）を返します。

* **ifnum**：属性値が数値の場合に返される値（オプション）。
* **ifnotnum**：属性値が数値でない場合に返される値（オプション）。

## isspace(\[ifspace]\[, ifnotspace])

属性値に空白文字のみが含まれ、少なくとも1つの文字がある場合は`true` の値（または`ifspace`）を返し、それ以外の場合は`false` の値（または`ifnotspace`）を返します。

* **ifspace**：属性値がスペースの場合に返される値（オプション）。
* **ifnotspace**：属性値がスペースでない場合に返される値（オプション）。

## isupper(\[ifupper]\[, ifnotupper])

属性値のすべての文字が大文字で、少なくとも1つの文字がある場合は`true` の値（または`ifupper`）を返し、それ以外の場合は`false` の値（または`ifnotupper`）を返します。

* **ifupper**：属性値が大文字の場合に返される値（オプション）。
* **ifnotupper**：属性値が大文字でない場合に返される値（オプション）。

## join(\[separator])

複数の値を区切り文字で区切られた文字列に分解します。

* **separator**：区切り文字（オプション）。

## jsonescape()

属性値をJSON エスケープされた単一行の文字列に変換します。

## just(integer\_width\[, character])

1番目のパラメータで指定した長さの文字列で左揃えされた属性値を返します。パディングは、2番目のパラメータで指定されたfillchar を使用して行われます。

* **width**：出力文字列の合計幅。
* **character**：パディングに使用される文字（オプション）。デフォルト文字はスペースです。

## lfind(substring\[, integer\_startindex])

属性値で部分文字列が見つかったときのゼロベースの最小のインデックスを返します。

* **substring**：属性値で検索する文字列。
* **startindex**：検索を開始するインデックス（オプション）。

## ljust(integer\_width\[, character])

1番目のパラメータで指定した長さの文字列で左揃えされた属性値を返します。パディングは、2番目のパラメータで指定されたfillchar を使用して行われます。

* **width**：出力文字列の合計幅。
* **character**：パディングに使用される文字（オプション）。デフォルト文字はスペースです。

## lsplit(delimiter, integer\_index)

属性値で表される文字列を、最初のパラメータで区切られたトークンに分割し、2番目のパラメータで指定されたインデックスのトークンを返します。左から数えます。

* **delimiter**：文字列をトークンに分割するための区切り文字として使用される文字列。
* **index**：最初のトークンがインデックス1にある場合にリクエストされるトークンのインデックス。

## match(pattern\[, index]\[, option])

属性値で表される文字列から、pattern パラメータで指定された正規表現が出現しているものを検索します。

* **pattern**：一致する正規表現パターン。
* **index**：返す一致の番号付きインデックス（オプション）。デフォルトインデックスは`0` です。
* **option**：正規表現オプションのカンマ区切りリスト（オプション）。一般的に使用されるオプションは、`IgnoreCase`、`Multiline`、`Singleline`、および`IgnorePatternWhitespace` です。

## md5hash(\[converttobase64])

属性値のMD5 ハッシュを計算します。

* **encodetobase64**：結果をbase-64 エンコード文字列に変換するかどうかを指定するBoolean 値（オプション）。デフォルト値は`true` です。

## notequals(value\[, notequals]\[, equals])

属性値を最初のパラメータの値と比較します。値が等しくない場合は`true` の値（または`notequals`）、それ以外の場合は`false` の値（または`equals`）を返します。

* **value**：属性値と比較する文字列。
* **notequals**：属性値が最初のパラメータで表される値と等しくない場合に返される値（オプション）。
* **equals**：属性値が最初のパラメータで表される値と等しい場合に返される値（オプション）。

## nowhitespace()

属性値で表される文字列からスペースを削除します。

## percentage(\[integer\_count])

パーセンテージとしてフォーマットされた数値を返します。

* **count**：小数点以下の表示桁数を示す数値（オプション）。

## regex(pattern\[, index]\[, option])

属性値で表される文字列から、pattern パラメータで指定された正規表現が出現しているものを検索します。

* **pattern**：一致する正規表現パターン。
* **index**：返す一致の番号付きインデックス（オプション）。デフォルトは`0` です。
* **option**：正規表現オプションのカンマ区切りリスト（オプション）。一般的に使用されるオプションは、`IgnoreCase`、`Multiline`、`Singleline`、および`IgnorePatternWhitespace` です。

## regexmatch(pattern\[, index]\[, option])

属性値で表される文字列から、pattern パラメータで指定された正規表現が出現しているものを検索します。

* **pattern**：一致する正規表現パターン。
* **index**：返す一致の番号付きインデックス（オプション）。デフォルトインデックスは`0` です。
* **option**：正規表現オプションのカンマ区切りリスト（オプション）。一般的に使用されるオプションは、`IgnoreCase`、`Multiline`、`Singleline`、および`IgnorePatternWhitespace` です。

## regexreplace(search, replacewith\[, integer\_startat])

属性値で見つかったすべての正規表現パターンを`replacewith` で置き換えます。

* **search**：検索する正規表現。
* **replacewith**：合致した部分を置換するテキスト。
* **startat**：置換を開始する文字インデックス（オプション）。デフォルトインデックスは`0` です。

## remove(integer\_index\[, integer\_count])

属性値から文字を削除します。最初のパラメータで指定されたゼロベースのインデックスから始まります。

* **index**：文字の削除を開始する位置。
* **count**：削除する文字数（オプション）。文字数が指定されていない場合、指定されたインデックスから始まるすべての文字が削除されます。

## replace(oldvalue, newvalue\[, ishex])

属性値で表される文字列内の最初のパラメータのすべての出現箇所を2番目のパラメータの値で置き換えます。

* **oldvalue**：置き換えられる文字列。
* **newvalue**：最初のパラメータのすべての出現箇所を置き換える文字列。
* **ishex**：最初のパラメータが置換する文字の16進表記であるかどうかを指定するBoolean 値（オプション）。デフォルト値は`false` です。

## rfind(substring\[, integer\_startindex])

属性値で部分文字列が見つかったときのゼロベースの最大のインデックスを返します。

* **substring**：元の値で検索する文字列。
* **startindex**：検索を開始するインデックス（オプション）。

## rjust(integer\_width\[, character])

2番目のパラメータで指定した長さの文字列で右揃えされた属性値を返します。パディングは、1番目のパラメータで指定されたfillchar を使用して行われます。

* **width**：出力文字列の合計幅。
* **character**：パディングに使用される文字（オプション）。文字が指定されていない場合、デフォルト値はスペースです。

## rsplit(delimiter, integer\_index)

属性値で表される文字列を、最初のパラメータで区切られたトークンに分割し、2番目のパラメータで指定されたインデックスのトークンを返します。右から数えます。

* **delimiter**：文字列をトークンに分割するための区切り文字として使用される文字列。
* **index**：最初のトークンがインデックス1にある場合にリクエストされるトークンのインデックス。

## sha1hash(\[converttobase64])

属性値のSHA-1 ハッシュを計算します。

* **encodetobase64**：結果をbase-64 エンコード文字列に変換するかどうかを指定するBoolean 値（オプション）。デフォルト値は`true` です。

## substring(integer\_index\[, integer\_length])

属性値の部分文字列を返します。パラメータで指定されたインデックスから始まり、右にカウントします。

* **index**：部分文字列が右から始まるゼロベースのインデックス。
* **length**：開始インデックスからの文字の長さ（オプション）。長さが指定されていない場合、最後までの部分文字列を返します。

## split(delimiter, integer\_index)

属性値で表される文字列を、最初のパラメータで区切られたトークンに分割し、2番目のパラメータで指定されたインデックスのトークンを返します。左から数えます。

* **delimiter**：文字列をトークンに分割するための区切り文字として使用される文字列。
* **index**：最初のトークンがインデックス1にある場合にリクエストされるトークンのインデックス。

## sqlescape()

属性値をSQL エスケープされた単一行の文字列に変換します。

* **dbtype**：エンコードするデータベースの種類。`SQL` または`SQLite` が使用可能です。デフォルトの種類は`SQL` です。

## startswith(substring\[, iftrue]\[, iffalse])

属性値が指定したパラメータで始まる場合は`true` の値（または`iftrue`）を返し、それ以外の場合は`false` の値（または`iffalse`）を返します。

* **substring**：最初に期待される文字列。
* **iftrue**：属性値がパラメータ値で始まる場合に返される値（オプション）。
* **iffalse**：属性値がパラメータ値で始まらない場合に返される値（オプション）。

## striphtml()

HTML マークアップが削除された文字列を返します。

## substring(integer\_index\[, integer\_length])

属性値の部分文字列を返します。パラメータで指定されたインデックスから始まります。

* **index**：部分文字列が始まるゼロベースのインデックス。
* **length**：開始インデックスからの文字の長さ（オプション）。長さが指定されていない場合、文字列の最後までの部分文字列を返します。

## toalpha()

文字列内の文字のみを返します。

## toalphanum()

文字列内の英数字のみを返します。

## tolower()

すべての文字が小文字に変換された属性値で表される文字列を返します。

## toupper()

すべての文字が大文字に変換された属性値で表される文字列を返します。

## trim()

属性の先頭と末尾のスペースを削除します。

## trimend()

属性の末尾のスペースを削除します。

## trimstart()

属性の先頭のスペースを削除します。

## truncate(integer\_count)

属性値を、パラメータで指定された文字数に切り捨てます。

* **count**：結果の文字列の文字数。

## wordwrap(\[integer\_width]\[, break]\[, cut]\[, wrapexp])

文字列を指定された文字数に折り返します。

* **width**：文字列が折り返される文字数（オプション）。
* **break**：改行に使用するbreak パラメータ（オプション）。
* **cut**：指定された幅で、またはその前で文字列を折り返すかどうかを指定するBoolean 値（オプション）。デフォルト値は`false` です。
* **wrapexp**：ブレーク可能な文字として使用される正規表現（オプション）。デフォルト文字はスペースです。

## print(\[delim])

指定された区切り文字を使用して連結された属性のすべての値を含む文字列を返します。

* **delim**：値を区切る区切り文字（オプション）。デフォルトデリミタはカンマです。

## xmldecode()

属性値をXML デコードされた文字列に変換します。

## xmlencode()

属性値をXML エンコードされた文字列に変換します。
