正規表現

フォームデザイナーで[正規表現]オプションを選択すると、表示されるデータの構造をプログラムできます。

テキストキャプチャタイプのみが、完全な正規表現機能を提供します。その他のキャプチャタイプには、データ入力を制御するその他のシンプルな制限があります。

次の表は、[正規表現]フィールドで使用できる一般的な文字と、実行されるマッチングの例を示します。

フィールド

内容

一致

^

行の先頭に一致する

これは正規表現の入力の開始点を示すものです

 

$

行の末尾に一致する

これは正規表現の入力の終了点を示すものです

 

.

任意の文字に一致する

^a.c$

abc、a2c、axc

|

OR(または)

^abc|xyz$

abcまたはxyz

[…]

括弧内に含まれるものと一致する

^[A-E]$

大文字のA~Eのみ使用可能

[^…]

括弧内に含まれないものと一致する

^[^A-E]$

大文字のA~Eは使用不可

{x}

一致回数が正確に「x」

^[A-E]{2}$

大文字のA~Eのみを使用できます。少なくとも2文字を含む必要があります

{x,y}

一致回数が「x」~「y」

^[A-E]{2,4}$

大文字のA~Eのみを使用できます。少なくとも2文字を含み4文字を超えることはできません

{x,}

一致回数が「x」以上

^[A-E]{2,}$

大文字のA~Eのみを使用できます。少なくとも2文字を含む必要がありますが合計数は無制限です

+

「+」の前の文字の一致回数が1回以上

^ab+c$

abcまたはabbbcに一致

?

「?」の前の文字の一致回数が1回以下

^ab?c$

acまたはabcに一致

!

使用できない文字の一致を切り替える

^(?!000)[0-8][0-9]{2}$

001から899の3桁は許容されますが、000という特定の数字は許容されません

例:国民保険番号

^[A-CEGHJ-PR-TW-Z]{1}[A-CEGHJ-NPR-TW-Z]{1}[0-9]{6}[A-D]{1}$

以下はこの正規表現の説明です

  • ^は文字列の開始を意味します
  • [A-CEGHJ-PR-TW-Z]{1}は最初の文字に一致します。D、F、I、Q、U、またはVにすることはできません
  • [A-CEGHJ-NPR-TW-Z]{1}は2番目の文字に一致します。D、F、I、O、Q、U、またはVにすることはできません
  • [0-9]{6}は6桁でなければなりません
  • [A-D]{1}は、最後の文字(A、B、C、またはDのみ)に一致します
  • $は文字列の終了を意味します

次の図は、有効な国民保険番号です。

次の図は、無効な国民保険番号です。

社会保障番号の例

^(?!000|666)[0-8][0-9]{2}-(?!00)[0-9]{2}-(?!0000)[0-9]{4}$

以下はこの正規表現の説明です

  • ^ - 文字列の開始を意味します
  • (?!000|666) – 000または666は入力できません
  • [0-8][0-9]{2} – 最初の桁は0~8、次の2つの桁は00~99に一致します
  • - – ユーザーはハイフンを区切り文字として入力する必要があります
  • (?!00)[0-9]{2} – 2つの桁が01~99に一致しますが、00は許容されません
  • - – ユーザーはハイフンを区切り文字として入力する必要があります
  • (?!0000)[0-9]{4} – 4つの桁が0001~9999に一致しますが、0000は許容されません
  • $ - 文字列の終了を意味します

次の図は、有効な社会保障番号です。

次の図は、無効な社会保障番号です。