StrBuild

式エディタ > 関数ディレクトリ

 

プレイスフォルダの置き換え

テンプレート内のプレースホールダを文字列で置き換えます。

この関数は以下のように動作します。

  1. @を検索します。

  2. @が見つかったら、別の@を検索します。

  3. 2つの@の間の文字列が数値であるかどうかをチェックします。

  4. 数値である場合、インデックスを持つパラメータがあるかどうかをチェックします。

  5. インデックスを持つパラメータがある場合、@数値@はパラメータ値と置き換えられます。条件に当てはまらない場合、置換は行われません。従って、例えば、@が1つしかなかったり、@間の値が数値でない場合は、置換しないで、そのままの値が返ります。

構文:

StrBuild (テンプレート文字列, 値1, 値2,...)

パラメータ:

テンプレート文字列 … 置換対象となるテンプレート。テンプレートは、以下の書式に基づいた通常のテキストとプレイスフォルダが含まれています。

@enumeration index@

enumeration index は、使用する値パラメータのインデックスです。

値 x … enumeration x 内に位置付けられる値

戻り値:

置換された文字列

例:

StrBuild (‘Hello @1@, You have @2@ reports’,A,str(B,’5’))

 

A='world'で B=20 の場合、「Hello world, You have 20 reports」が返ります。

この例では、以下の連結された式を置換しています。

’Hello ‘&Trim(A)&’, You have ‘&Trim(Str(B,’5’))&’ reports’

注意事項:

 

  • この関数は、パラメータ値をトリミングします。

  • この関数は、複合文の翻訳が可能なため、MlsTrans関数を使用する場合に便利です。

  • テキスト内の@数値@という文字列をそのまま表示する場合は、前にバックスラッシュ(\)を設定してください。例えば、\@1@は変換されずそのまま出力されます。