メイン コンテンツをスキップする 補完的コンテンツへスキップ

SQL Serverで正規表現ファンクションを使用

始める前に

  • SQL Serverに正規表現ファンクションをデプロイ済みであること。
  • 正規表現をテスト済みであること。
  • Profilingパースペクティブを選択済みであること。

このタスクについて

データベースの分析済みカラムで正規表現を作成できるようにするには、事前に、作成した正規表現ファンクション(この例ではRegExMatch)を特定のデータベース内で宣言する必要があります。
この例で使われているコードは次のとおりです。
Using System;
Using Microsoft.SqlServer.Server;
Using System.Text.RegularExpressions;
Public partial class RegExBase
{
     [SqlFunction(IsDeterministic = true, IsPrecise = true)]
     Public static int RegExMatch( string matchString , string pattern)
     {
            Regex r1 = new Regex(pattern.TrimEnd(null));
            if (r1.Match(matchString.TrimEnd(null)).Success == true) 
            {
                 return 1 ;
            }
            else
            {
                 return 0 ;
            }
Using
     }
};

手順

  1. [DQ Repository] (DQリポジトリー)ツリービューで、[Libraries] (ライブラリー) > [Indicators] (インジケーター) > [System Indicators] (システムインジケーター) > [Pattern Matching] (パターンマッチング)と展開します。
  2. [Regular Expression Matching] (正規表現マッチング)をダブルクリックするか、右クリックしてコンテキストメニューから[Open] (開く)を選択します。
    対応するビューが開き、インジケーターメタデータとその定義が表示されます。
    [正規表現の一致]ビュー。
    データベースのリストに、クエリーテンプレートを定義するデータベースを追加する必要があります。このクエリーテンプレートは正規表現マッチングを計算します。
  3. [Indicator Definition] (インジケーターの定義)ビューの下にある[+]ボタンをクリックします。
    ビューの下部に空の行が追加されます。
  4. 新しいフィールドで、矢印をクリックしてテンプレートを定義するデータベース(この例ではMicrosoft SQL Server)を選択します。
  5. 上記のデータベースのいずれかからインジケーター定義をコピーします。
  6. 新しいフィールドの横にある[Edit...] (編集...)ボタンをクリックします。
    [Edit Expression] (式を編集)ダイアログボックスが表示されます。
    [式を編集]ダイアログボックス。
  7. インジケーター定義(テンプレート)を[Expression] (式)ボックスに貼り付けた後、選択したデータベースにテンプレートを適合できるよう、WHENの後のテキストを変更します。
  8. OKをクリックして、次のステップに進みます。新しいテンプレートがフィールドに表示されます。
  9. エディターの上部にある[Save] (保存)をクリックします。

タスクの結果

Talend Studioでの正規表現関数の定義方法の詳細は、特定のデータベースに対するクエリーテンプレートを定義および特定のデータベースにユーザー定義ファンクションを宣言をご覧ください。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。