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

利用対象...

* Big Data Platform
* Cloud API Services Platform
* Cloud Big Data Platform
* Cloud Data Fabric
* Cloud Data Management Platform
* Data Fabric
* Data Management Platform
* Data Services Platform
* Qlik Talend Cloud Enterprise Edition
* Qlik Talend Cloud Premium Edition
* Real-Time Big Data Platform

## 始める前に

* 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] (ライブラリー) &gt; [Indicators] (インジケーター) &gt; [System Indicators] (システムインジケーター) &gt; [Pattern Matching] (パターンマッチング)と展開します。
2. [Regular Expression Matching] (正規表現マッチング)をダブルクリックするか、右クリックしてコンテキストメニューから[Open] (開く)を選択します。

   対応するビューが開き、インジケーターメタデータとその定義が表示されます。

   ![\[正規表現の一致\]ビュー。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/regex_function_template1.png)

   データベースのリストに、クエリーテンプレートを定義するデータベースを追加する必要があります。このクエリーテンプレートは正規表現マッチングを計算します。
3. [Indicator Definition] (インジケーターの定義)ビューの下にある[+]ボタンをクリックします。

   ビューの下部に空の行が追加されます。
4. 新しいフィールドで、矢印をクリックしてテンプレートを定義するデータベース(この例ではMicrosoft SQL Server)を選択します。
5. 上記のデータベースのいずれかからインジケーター定義をコピーします。
6. 新しいフィールドの横にある[Edit...] (編集...)ボタンをクリックします。

   [Edit Expression] (式を編集)ダイアログボックスが表示されます。

   ![\[式を編集\]ダイアログボックス。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/regex_function_template.png)
7. インジケーター定義(テンプレート)を[Expression] (式)ボックスに貼り付けた後、選択したデータベースにテンプレートを適合できるよう、WHENの後のテキストを変更します。
8. OKをクリックして、次のステップに進みます。新しいテンプレートがフィールドに表示されます。
9. エディターの上部にある![\[Save\] (保存)](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/save.svg)をクリックします。

## タスクの結果

Talend Studioでの正規表現関数の定義方法の詳細は、[特定のデータベースに対するクエリーテンプレートを定義](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0/defining-query-template-for-specific-database)および[特定のデータベースにユーザー定義ファンクションを宣言](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0/declaring-user-defined-function-in-specific-database)をご覧ください。