Discovery ガイド > Discoveryの紹介 > パターン式について
 
パターン式について
一致式 変換式に入力されるパターン式については、以下で定義されている有効な正規表現である必要があります。
http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html
以下の例で考えてみましょう。
この例の一致式は、次のような形式の電話番号にマッチします。
(333) 123-1234
変換式で再利用したいグループ化を括弧で囲みます。バックスラッシュは、マッチする文字列の一部である括弧をマークします。変換式では、3 桁のグループは変換された文字列の出力で終了します。変換式に \1 を置くと、最初のグループがそこに行き、他のグループも同様になります。変換された電話番号は3331231234となります。この電話番号の標準形式は、すべての電話番号に適用され、比較できるようになります。
以下の表は、電話番号のパターンをどのように定義するかを示しています。
電話番号のストレージパターン
一致式
変換式
Discoveryで使用される正規形式
(333) 123-1234
\((\d\d\d\)\s*(\d\d\d)-(\d\d\d\d)
\1\2\3
3331231234
333.123.1234
(\d\d\d)\.(\d\d\d)\.(\d\d\d\d)
\1\2\3
3331231234
333 123-1234
(\d\d\d)\s(\d\d\d)-(\d\d\d\d)
\1\2\3
3331231234
333-123-1234
(\d\d\d)-(\d\d\d)-(\d\d\d\d)
\1\2\3
3331231234
このように、データベース内のすべての電話番号のフォーマットを、インデックス作成と比較の中間段階で正規化し、同じ電話番号を含むセルが一致するようにすることが可能です。