正規表現ジェネレーター
正規表現ジェネレーターを使用すると、定義済みのパターンと一致する文字列を生成できます。 正規表現ジェネレーターは、文字列を受け取るデータ型を持つデータ列と共に使用できます。 このようなデータ型には char、varchar、varchar(max)、text、nchar、nvarchar、nvarchar(max)、ntext、および sysname と、これらの型に基づくユーザー定義の型があります。 正規表現ジェネレーターは、共通言語ランタイム ユーザー定義型と共に使用することもできます。
ヒント
正規表現ジェネレーターは、一意の値を保証できません。 したがって、一意の値を持つ必要がある列では使用できません。
列の正規表現データ ジェネレーターを使用するには、[データ生成計画] ウィンドウの [列の詳細] ペインで指定する必要があります。 正規表現ジェネレーターを指定した後、[プロパティ] ウィンドウで Expression プロパティを設定する必要があります。 Expression プロパティには、データと一致するパターンを格納します。 詳細については、「列へのデータ生成の詳細の指定」を参照してください。
正規表現演算子
Expression プロパティは、次の正規表現演算子をサポートしています。
式 |
説明 |
---|---|
. |
任意の文字を示します。 |
\ |
後続の文字を、特殊文字としてではなく、文字どおりに解釈する必要があることを示します。 たとえば、\. はリテラル '.' を示します。 |
() |
かっこ内の演算子をグループ化します。 |
{n} |
前の項目の n 個のインスタンスを生成します。 たとえば、{2} は 'aa' を生成します。 |
{n,m} |
前の項目の少なくとも n 個以上 m 個以下のインスタンスを作成します。 たとえば、{2,4} は 'aa'、'aaa'、または 'aaaa' を生成します。 |
{n,} |
前の項目の n 個以上のインスタンスを生成します。 たとえば、{2,} は 'aa'、'aaa'、'aaaa'、'aaaaa' などを生成します。 |
* |
前の項目の 0 個以上のインスタンスを生成します。 |
+ |
前の項目の 1 個以上のインスタンスを生成します。 |
? |
前の項目の 0 個または 1 個のインスタンスを生成します。 |
| |
| 文字の両側にある項目を生成します。 |
[aeiou] |
角かっこ内の文字を生成します。 |
[a-z] |
指定した文字の範囲内の任意の文字を生成します。 |
[^aeiou] |
角かっこ内の文字を除く任意の文字を生成します。 |
サンプル正規表現
次の文字列は、一般的な正規表現の例です。
式 |
説明 |
---|---|
(F|M) |
性別のシンプルな表現。 |
[1-9][0-9]{2,2}-[1-9][0-9]{2,2}-[0-9]{4,4} |
800-555-8446 として表される、シンプルな電話番号。 |
\+1 (425|206)-[1-9][0-9]{2,2}-[0-9]{4,4} |
シアトル地域の電話番号の国際的な表記。 |
[1-9][0-9]{4}-[0-9]{4} |
4 桁の数字を追加した郵便番号 (98008-2405 など)。 |
[1-6]{1}[0-9]{1,3} (SE|NE|NW|SW) [1-2]{1}[0-9]{1,2}th (ST|CT|PL|AVE), (Redmond, WA 9805[0-9]|Bellevue, WA 9800[1-9]|Sammamish, WA 9807[0-9]|Seattle, WA 9806[0-9]|Issaquah, WA 9808[0-9]) |
シンプルな住所。 |
Seattle|(New York)|Boston|Miami|Beijing|(Los Angles)|London|Paris |
都市名のリスト。 |
[a-z]{5,8}@(hotmail\.com|msn\.com|[a-z]{3,8}\.(com|net|org)) |
シンプルな電子メール アドレス。 |
[1-9][0-9]{3} [0-9]{4} [0-9]{4} [0-9]{4} |
クレジット カード番号。 |
参照
概念
データ ジェネレーターを使用したデータベースのテスト データの生成