置換を使用したデータの変換
単純なパターン一致または正規(regex)表現を使用して列のデータを変換します。たとえば、「状態」列では、CAをCaliforniaに変更できます。
正規表現とも呼ばれる、任意のPerl Compatible Regular Expression (PCRE)を使用できます。変換は、データ・セット内のすべての該当する行に適用されます。
正規表現を使用した置換変換の例
正規(regex)表現を使用してデータを変換する例をいくつか示します。
これらの例では、「検索式」列には「置換する文字列」フィールドに入力した内容を示し、「置換値」には「新規文字列」フィールドに入力した内容を示しています。
表3-1 置換変換の例
検索式 | 置換値 | 元のテキスト | 置換後のテキスト | 注記 |
---|---|---|---|---|
@([a-z]+)(?=\.[a-z]{3}) |
@example | MichelePFalk@yahoo.com | MichelePFalk@example.com | この例は、電子メール・アドレスのドメイン詳細を置換します。 |
^Gray|Grey$ |
Silver |
Grey Gray Graystone |
Silver Silver Graystone |
^$文字は、文字列全体の一致のみを探すことを意味します。垂直バーはORの正規表現であるため、この場合、正規表現は"Gray"または"Grey"を探し、"Silver"で置換します。
正規表現は値全体の一致のみを探すため、文字列Graystoneは変換されません。 |
\d+ |
9999 |
8398 Park Street 123 Oracle Parkway |
9999 Park Street 9999 Oracle Parkway |
この正規表現は、1つ("\d")またはそれを超える("+")桁の数字を"9999"で置換します。置換は、元のテキストに3桁しかnない場合にも機能します。 |
([A-z]+)(\d+) |
$2 |
UA101654 US829383 |
101654 829383 |
この正規表現は、1つ("[A-z]")またはそれを超える("+")連続する文字と、それに続く1つ("\d")またはそれを超える("+")桁の数字を意味します。2つの式はそれぞれかっこで囲まれており、これは2つのグループ(最初の部分([A-z])と2番目の部分(\d+))をキャプチャします。これらのグループは自動的に採番されるため、2番目のグループ用のドル記号を使用することで置換で使用できます("$2"など)。 |
([A-z]+)(\d+) |
郵便番号: $2 |
UA101654 US829383 |
郵便番号: 101654 郵便番号: 829383 |
この例では、グループに加えて独自の置換テキストを挿入する方法を示していることを除き、前の例と同じ一致式を使用します。テキストは、リコールされた一致グループの前後に挿入できます。 |