コンテンツにスキップ

テキストファイル内で検索と置換を行います。特定の文字列やプレースホルダーを新しい値に置き換えます。テンプレート処理(CUSTOMER_NAME のようなプレースホルダーを実際の名前に置き換える)や、テキストのサニタイズ(特定の文字列の削除やマスク)に便利です。

サイズを問わず、UTF-8のテキストファイル(TXT、CSV、JSON、XML、HTML、RML)に対応しています。PDFやOfficeドキュメントなど、UTF-8テキストではないファイルを指定すると、ステップは失敗します。

  • 入力ファイルまたはディレクトリ — 変更するファイル、またはファイルが入ったフォルダーです。
  • 出力先のファイルまたはディレクトリ — 結果の書き込み先です。結果は常に入力と同じドキュメントアカウントに書き込まれ、出力先ではパスを指定します。
  • 圧縮 — 出力の圧縮方式です。圧縮なし、Zip、GZip、BZip2、Zstandard、LZ4、Snappy、LZO、Deflate(zlib)から選択します。SnappyとLZ4は、SparkとHadoopが読み取れるブロック形式で書き込まれ、LZOは lzop ファイルとして書き込まれます。
  • テキスト置換の操作順序 — 置換ごとに1行で、元のテキストと置換後のテキストを指定します。置換後のテキストには変数を使用できます。
  • 置換は上から順に実行され、それぞれが、それより上の置換の結果に対して作用します。そのため、前の行が入れたテキストを、後の行で変更することもできます。
  • 照合は完全一致で、大文字と小文字が区別され、出現するすべての箇所が置換されます。
  • 元のテキストが空の行は無視されます。
  • フォルダーを指定した場合、各ファイルは、出力先の名前から拡張子を除いた名前のフォルダーの中に、元のファイル名で書き込まれます。
  • 入力パスが存在しない場合、またはファイルがない場合、ステップはそのパスを示す警告とともに終了して何も処理せず、ワークフローは続行されます。
元のテキスト 置換後のテキスト Dear CUSTOMER_NAME, は次のようになります
CUSTOMER_NAME Acme Ltd Dear Acme Ltd,