Transformer ステージを使用して、フィールドに Mask Transform を適用できます。Mask Transform では、指定されたパターンを使用して、フィールドに文字を適用したり、フィールドから文字を削除したりできます。例えば、Mask Transform を使用すると、8003685806 などの数字の文字列を (800) 368 5806。
-
Enterprise Designer で、Transformer ステージをキャンバスにドラッグして目的の位置に接続します。
-
[Transformer] ステージをダブルクリックします。
-
[追加] をクリックします。
-
[書式設定] を展開し、[マスク] を選択します。
-
使用するマスクのタイプを選択します。
- 適用
- フィールドに文字を追加して、文字列を新しいパターンにまとめます。
- 削除
- 文字列から文字のパターンを取り出します。
-
[マスク文字列] フィールドで、文字の追加または削除で使用するパターンを指定します。
マスク文字列を指定するときには、リテラル文字とマスク文字の 2 種類の文字を使用します。
リテラル文字は、文字列内の実際の文字を表します。削除マスクを使用するときは、入力文字は、リテラル文字と正確に一致している必要があります。正確に一致していれば、リテラル文字は入力から削除されます。同様に、適用マスクでは、リテラル文字は、マスク定義によって指定される入力内の位置に追加されます。
マスク文字列では、マスク文字というもう 1 つの種類の文字も使用できます。マスク文字は、入力文字列の特定の位置にある文字のタイプを指定します。例えば、入力の 1 文字目が数字の場合、最初のマスク文字は #
にする必要があります。入力内の要素のうち、このマスク文字と一致する要素のみが出力に残ります。
次の表に、[マスク文字列] フィールドで使用できるマスク文字を示します。
表 1. マスク文字
文字
|
定義
|
#
|
任意の数字。
|
'
|
エスケープ文字。特殊な書式文字をエスケープします。
|
U
|
任意の文字。すべての小文字を大文字にマップします。
|
L
|
任意の文字。すべての大文字を小文字にマップします。
|
A
|
任意の文字または数字。
|
?
|
任意の文字。
|
*
|
任意。
|
H
|
16 進文字 (0-9、a-f、または A-F)。
|
-
[追加] をクリックします。
-
[OK] をクリックします。
Mask Transform の例
これは、文字列に書式設定を適用する適用マスクです。です。この例で "(" および ")" と <スペース> はリテラルなので出力に追加されます。# はマスク文字なので、数字はすべて残ります。
入力: 8003685806
マスク文字列: (###) ### ####
出力: (800) 368 5806
次の例は、文字列から文字のパターンを取り出す削除マスクです。です。この例のマスクにはリテラルがないので何も削除されません (マスク文字 * は何を表すのにも使用できます)。
入力: (800) 368 5806
マスク文字列: *###*###*####
出力: (800) 368 5806