StringReplace

テーブルを参照して、文字列を置換します。

■入力/出力

接続数: 1
入力データ型説明
入力1String文字列

出力データ型説明
出力1String置換した文字列

■プロパティ

名前プロパティ型説明
置換テーブルの指定方法choice 使用するテーブルをファイルから読み込むか、直接入力するかを指定します。
ファイル [File] - ファイルから読み込んだテーブルを使用します。
直接入力 [Inline] - 置換テーブルの内容に直接入力したテーブルを使用します。
ファイルパスの起点pathResolverテーブルファイルの相対パスの起点を指定します。
プロジェクトフォルダ [Relative]
プロジェクトファイルと同じフォルダを起点とします。
ホームフォルダー [ProjectOwner]
ホームフォルダーを起点とします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点とします。
ファイルパスremoteFile置換テーブルの指定方法が「ファイル」の場合に、テーブルファイル名をファイルパスで指定します。
ファイルパスで指定できるのは、ユーザーのホームフォルダー以下のファイルのみです。
ファイルのエンコーディングchoice置換テーブルの指定方法が「ファイル」の場合に、テーブルファイルのエンコーディングを指定します。
置換テーブルの内容string置換テーブルの指定方法が「直接入力」の場合に、使用するテーブルを直接入力します。

■テーブルの書式

テーブルには1行が「置換対象文字列=置換文字列」という形式で複数の置換文字列を定義します。

あいうえお=ABCDE
かきくけこ=12345

上記の例のテーブルを使用した場合、「あいうえお」は「ABCDE」、「かきくけこ」は「12345」に置換されます。

テーブル中では「\」を使用することで以下のエスケープ文字が使用できます。

\rCR
\nLF
\tタブ
\==
\\\
\uXXXXコードXXXXに対応するUnicode文字

■テーブルの読み込み

置換テーブルの指定方法に「ファイル」を指定した場合、テーブルの内容はリクエスト内での最初の関数呼び出し時に読み込まれます。 同じリクエスト内の同一関数ではこのとき読み込まれたものがリクエスト終了まで使用されます。 つまり、ループやサブフローなどで同一リクエスト内で同一関数が複数回呼び出される場合は最初に読み込まれた内容がリクエスト終了まで使用されます。 読み込み時にはテーブルファイルの更新チェックを行いますので、テーブルファイルが更新されなければ次のリクエスト時でも再読み込みは行われません。

■Windows-31JとJIS系文字コードの相互変換について

Javaでは、Windows環境で通常使用されている文字コード(Windows-31J)とJISで定義されている文字コード(Shift_JIS, EUC-JP, iso-2022-jp)は区別されています。通常、これらのコード間での文字コード変換が可能ですが、一部の文字ではマッピングされているUnicodeのコードポイントが異なるため文字化けが発生します。
文字化けが発生する文字は以下の7文字です。

文字Windows-31J(あるいはShift_JIS)でのコードWindows-31JでUnicodeに変換した場合Shift_JISでUnicodeに変換した場合
815C20152014
8160FF5E301C
816122252016
817CFF0D2212
8191FFE000A2
8192FFE100A3
81CAFFE200AC

フロー内でこれらの文字で文字化けが発生している場合は、この関数で以下のテーブルを使用することで回避できます。


・Windows-31JからJIS系文字コードへの変換の場合
\u2015=\u2014
\uFF5E=\u301C
\u2225=\u2016
\uFF0D=\u2212
\uFFE0=\u00A2
\uFFE1=\u00A3
\uFFE2=\u00AC
・JIS系文字コードからWindows-31Jへの変換の場合
\u2014=\u2015
\u301C=\uFF5E
\u2016=\u2225
\u2212=\uFF0D
\u00A2=\uFFE0
\u00A3=\uFFE1
\u00AC=\uFFE2