Replace

「Replace」プロセッサでは、参照データ・マップを使用して(たとえば、データを標準化するために)データを変換します。マップの1列目は値の照合に使用され、2列目は置換の制御に使用されます。

実行される置換は、値全体の単純な置換(「Oracle Ltd」の値を「Oracle Limited」に置換するなど)、または入力された値の一部の置換(「CompanyName」属性の最後が「ltd」の場合に「limited」に置換する、「decsd」の文字列を検出するたびに「deceased」に置換するなど)になります。参照データとの照合方法、つまり、データの置換方法は、次のいずれかのオプションを使用して制御されます。

また、参照データとの照合では、大/小文字を区別または無視できます。

「Contains」、「Starts with」または「Ends with」オプションを使用する場合は、参照データの参照列に対して複数のマッチが存在する可能性があります。この場合、置換は常に1回のみ発生します。たとえば、「PT」という値を「PINT」で置換する「Contains」置換を実行すると、「10PT - APTITUDE BITTER」の値は「10PINT - APINTITUDE BITTER」ではなく「10PINT - APTITUDE BITTER」に変換されます。

「Delimiter match」オプションを使用し、照合する前にデリミタを使用してデータを区切るように選択すると、入力された値に多数のマッチがある場合も、置換マップの参照列とマッチする分割された値が置換されます。

複数のマッチがある場合の「Replace」プロセッサによる置換方法の判断は、構成オプションを使用して制御できます。

デフォルトでは、単純にマップが順にチェックされ、入力データからのマップに対する最初のマッチが置換に使用されます。たとえば、置換マップに「Lyn」および「Lynda」の値があり、リストの先頭に「Lyn」がある場合、「Lynda」という入力値は、マップの参照値「Lyn」を使用して置換されます。

ただし、「Match longest value」オプションを使用してこれを制御できます。このオプションを選択すると、マッチした各参照エントリの長さが評価され、最も長いマッチが使用されます。したがって、前述の例ではマップの「Lynda」という参照値を使用して置換が実行されます。

用途

「Replace」プロセッサを使用して、同じものを意味する異なる接尾辞(LtdとLimited、AssocとAssc、CnclとCouncilなど)が標準的な様式で表されるように標準化(たとえば、会社名の値をすべて標準化)します。

日付の置換

「Replace」を使用して日付値を置換できます。ただし、機能させるためには、参照データ・マップの日付値がISOの標準書式、つまり、YYYY-MM-DD(1900-01-01など)またはYYYY-MM-DD HH:mm:ss(1900-01-01 00:00:00など)である必要があります。日付はNull値で置換できます。これにより、たとえば無効な日付を削除できます。

構成

入力

参照データ・マップを使用して値を置換する単一の文字列属性。属性は文字列または文字列配列です。配列を入力すると、置換は配列要素レベルで適用され、(置換実行後のデータが設定された)配列が出力されます。

オプション

オプション

タイプ

目的

デフォルト値

Replacements

参照データ

マップ内の参照列に対して属性値を照合します。マッチがあると、マッチした値は右列の値に置換されます。

なし

 

Match longest value?

Yes/No

マップに対して複数のマッチがある場合に、「Starts With」、「Ends With」または「Contains」置換の中からどの置換を実行するかを制御します。

No

Ignore case?

Yes/No

マップの参照列と照合するときに、大/小文字を無視するかどうかを決定します。

Yes

Match list by

選択(Whole Value/Starts With/Ends With/Contains/Delimiter Match)

マップと照合する方法、および元の値のどの部分を置換するかを決定します。

Whole Value

Delimiters

自由形式テキスト入力

デリミタを使用してデータを区切ってから値をマップと照合する場合は、使用するデリミタ文字を指定できます。

スペース

出力

データ属性

データ属性

タイプ

目的

[Attribute Name].Replaced

導出

置換した値が設定された新しい文字列または配列属性。

置換した値。

入力属性値がマップとマッチしなかった場合は、新しい属性に元の属性値がそのまま使用されます。

フラグ

フラグ属性

目的

可能性のある値

[Attribute Name].ReplaceSuccess

「Replace」の実行が成功、失敗または無効かを示します。

Y/N/-

実行

実行モード

サポート

バッチ

Yes

リアルタイム・モニタリング

Yes

リアルタイム応答

Yes

結果ブラウザの表示

「Replace」プロセッサでは、変換のサマリー・ビューが作成され、次の統計が表示されます。

統計

意味

Transformed

置換が実行されたレコードの数。件数をドリルダウンすると、レコードが表示されます。

Untransformed

置換が実行されなかったレコードの数。

Invalid

入力データ型に対して置換値が無効なため、置換に失敗したレコードの数(後述の注意を参照)。

注意: 「Replace」プロセッサでは、文字列、配列、数値または日付の任意のデータ型の属性を使用できます。ただし、「Replace」は入力属性のデータ型を常に出力属性に対して使用するため、選択可能な変換の中には、置換された値が出力属性のデータ型では無効になる変換があります。たとえば、マップを使用して「2006-04-14」という日付値を「Bad date」で置換しようとすると、「Bad date」という値は有効な日付ではないため、置換は失敗します。無効な置換が存在する場合は、置換を実行する前に元の属性を異なるデータ型に変換するか、参照データ・マップを変更して無効な置換を削除する必要があります。

出力フィルタ

「Replace」プロセッサからは、次の出力フィルタが使用可能です。

この例では、「Replace」プロセッサを使用して、サービス管理データベース例の顧客表から「Address3」属性の英国の郡およびその他同様のデータを標準化します。出力属性名は「Address3.stand」です。

ここでは「Whole Value」置換を使用します。次の図は、変換されたレコードのドリルダウン・ビューからの抜粋です。

Oracle (R) Enterprise Data Qualityオンライン・ヘルプ バージョン8.1
Copyright (C) 2006,2011 Oracle and/or its affiliates.All rights reserved.