フォーム記入時のルールを作成し、そのルールに従って回答が記入されるように設定できます。たとえばメールアドレスの入力を求める場合、適切な形式のメールアドレスが入力されたフォームのみを送信できるように指定できます。
質問のルールを設定する
- Google フォームでフォームを開きます。
- 次の質問形式のうちいずれか 1 つを追加します。
- 記述式
- 段落
- チェックボックス
- その他アイコン
をクリックします。
- [回答の検証] をクリックします。
- 設定するルールの種類を選択します。
- 回答がルールに違反している場合にユーザーに表示されるエラー メッセージを右端に入力します。
ルールの種類
質問の形式ごとに、異なる回答の検証ルールを設定できます。
- 番号:
- 数値比較演算子
- 例: 50 以上の数値
- 次の間にある
- 例: 21~42 の間の整数
- 次の間にない
- 数字
- 整数
- 数値比較演算子
- テキスト:
- 次の文字を含む
- 例: 回答に「キャンディ」という単語が含まれていることを確認します。
- 含まない
- メール: 回答はメール形式である必要があります。
- URL: 回答は URL 形式である必要があります。
- 次の文字を含む
- 長さ: 最大文字数や最小文字数を満たす回答のみを受け付けるように指定します。
- 例: 回答の長さを 500 文字以下、または 200 文字以上に指定します。
- 正規表現: 指定した特定の正規表現に一致する回答のみを受け付けるように指定します。詳しくは正規表現に関する説明をご覧ください。
- 例: 回答を 0~9 の数字からなる 10 桁の電話番号にするように指定します。
- 入力: 正規表現 [0-9]{10} に一致
- 期待される結果: 1234567890
- 例: 回答を 0~9 の数字からなる 10 桁の電話番号にするように指定します。
- 長さ: 最大文字数や最小文字数を満たす回答のみを受け付けるように指定します。
- 例: 回答の長さを 500 文字以下、または 200 文字以上に指定します。
- 正規表現: 指定した特定の正規表現に一致する回答のみを受け付けるように指定します。詳しくは正規表現に関する説明をご覧ください。
- 選択する最低個数: 選択するチェックボッスの最低個数を指定します。特定のチェックボックス数が選択されていることを確認してください。
- 選択する最多個数: 選択するチェックボックスの最多個数を指定します。
- 選択する個数: 選択する必要があるチェックボックスの個数を指定します。
正規表現
特定の正規表現に一致する回答のみを受け付けるように指定できます。正規表現を使って、回答に含まれるテキストのパターンを検索します。
正規表現 | 説明 | 例 | 一致する | 一致しない |
---|---|---|---|---|
. | ピリオドは、この位置にある任意の文字を表します。 | d. | do、dog、dg、ads | fog、jog |
* | 文字の後のアスタリスクは、直前の文字を 0 回以上繰り返す文字列の検索を意味します。 | do*g | dog、dg、dooog | dOg、doug |
+ | 文字の後のプラス記号は、直前の文字を 1 回以上繰り返す文字列の検索を意味します。 | do+g | dog、dooog | dg、dOg、doug |
? | 直前の文字を含まない文字列も返されます。 | do?g | dg、dog | dOg、doug |
^ | キャレットは、正規表現の先頭に挿入して使用し、文字列がキャレットの直後の文字またはシーケンスで始まることを表します。 | ^[dh]og | dog、hog | A dog、his hog |
$ | ドル記号は、正規表現の末尾に配置して使用し、文字列が直前の文字またはシーケンスで終わることを表します。 | [dh]og$ | dog、hog、hot dog | dogs、hog、doggy |
{A, B} | 直前の語句を A~B 回繰り返します(A、B は数値)。 | d(o{1,2})g | dog、doog | dg、dooog、dOg |
[x]、[xa]、[xa5] | 文字セットの中の 1 つの文字のみがその位置で使用されることを示します。通常、角括弧の中には、上記の正規表現で使用している文字など、どのような文字でも使用できます(例: [xa,$5Gg.]) | d[ou]g | dog、dug | dg、dOg、dooog |
[a-z] | 指定の範囲内の文字の検索を意味します。一般的な範囲として、a~z、A~Z、0~9 などがあり、複数の範囲を組み合わせて 1 つの範囲とすることができます(例: [a-zA-Z0-9])。また、上記の文字セットと組み合わせることもできます(例: [a-zA-Z,&*])。 | d[o-u]g | dog、dug、dpg、drg | dg、dOg、dag |
[^a-fDEF] | ^ で始まる文字セットは、指定の文字セットにない文字の検索を意味します。 | d[^aeu]g | dog、dOg、dig、d$g | dg、dag、deg、dug |
\s | 空白文字を表します。 | d\sg | d g、d[TAB]g | dg、dog、doug |
注: 正規表現で特定の意味を持つ文字(^、$ など)のインスタンス自体を検索する場合は、検索キーワードのその文字の直前にバックスラッシュ(\)を挿入してエスケープ処理する必要があります。たとえば、「$」の文字のインスタンスを検索する場合は、「\$」と入力します。
スプレッドシートの検索で正規表現を使用する方法の例を下記にいくつか示します。
ドルの金額を含むセルを検索する
検索バーに次のように入力します: ^\$([0-9,]+)?[.][0-9]+
この正規表現では、最初の数は 0~9 またはカンマが 0 回以上繰り返される数で、続いてピリオド(.)、次に 0~9 の数が 0 回以上繰り返されます。この検索では、次のような文字列が返されます: $4.666、$17.86、$7.76、$.54、$900,001.00、$523,877、231.56
米国の郵便番号を含むセルを検索する
検索バーに次のように入力します: [0-9]{5}(-[0-9]{4})?
5 つの数字を持つか、それに続くハイフンと 4 つの数字を持つ米国の郵便番号が返されます。
小文字で始まる名前を含むセルを検索する
検索バーに次のように入力します: ^[a-z].*
この正規表現は、小文字とそれに続く 0 個以上の文字を含む文字列を表します。この検索では、次のような文字列を返します: bob、jim、gEORGE、marTin