(Googleフォーム)半角数字だけ入力させる方法 (original) (raw)

Googleフォームで、半角数字だけからなる文字列を入力させる方法についてです。

文字数の上限を設定する場合

ここでは4文字以内の半角数字を入力させるものとします。

まず設問の形式については「記述式(短文)」とします。
そして右下の「その他のオプション」のアイコンをクリックして「回答の検証」を選択します。

設定用のプルダウン等が現れます。
ここで左の2つのプルダウンから「正規表現」「一致する」を選択します。
そしてその右のテキストボックスに「[0-9]{1,4}」と入力します。「[0-9]」というのは0~9の半角数字を意味で、「{1,4}」というのは1文字から4文字という意味です。

デフォルトのエラーメッセージ(規則に違反したときに表示)もありますが、意味が分かりにくいので独自に設定しておきます。
なお設問中にある説明(4桁以内の半角数字で~)は上記のをクリックしたところで「説明」を選択すれば入力できます。

入力中の画面です。
半角数字4桁ではもちろん問題ありませんが…

5桁にすると設定したエラーメッセージが表示され、入力を完了できません。

同じ4桁の数字でも、全角ではやはりエラーとなります。

ところで、次の画面は回答をスプレッドシートに反映させたところです。
0で始まる数字は文字列として記録され、0以外の数字で始まる場合は数値として記録されるというちょっと変わった結果になります。

文字数の下限を設定する場合

画像は省略しますが、例えば4文字以上の半角数字を入力させる場合、上記の2つ目の画像の中央のテキストボックス(正規表現のパターン文字列)に次のように入力します。

正規表現の文字列(4文字以上の半角数字を入力させる場合)

[0-9]{4,}

{ }内の最初の数字で最小の文字数を設定します。一方でカンマの後の数字を省略することで「○文字以上」という意味になります。
ところで「{,4}」としても上記例のような「4文字以内」という意味にはならないので、その場合は省略しないよう注意してください。

文字数の下限と上限を設定する場合

例えば4文字以上10文字以下の半角数字を入力させる場合、上記の2つ目の画像の中央のテキストボックス(正規表現のパターン文字列)に次のように入力します。

正規表現の文字列(4文字以上10文字以下の半角数字を入力させる場合)

[0-9]{4,10}

{ }内の最初の数字で最小の文字数を設定し、2番目の数字で最大の文字数を設定します。

文字数を一定(n文字ちょうど)に制限する場合

例えば4文字ちょうどの半角数字を入力させる場合、上記の2つ目の画像の中央のテキストボックス(正規表現のパターン文字列)に次のように入力します。

正規表現の文字列(ちょうど4文字の半角数字を入力させる場合)

[0-9]{4}

{ }内に数字を1つだけ入力すれば「ちょうど○文字」という意味になります。
「[0-9]{4,4}」でも同じ意味になります。

何文字でもよい場合

上記の2つ目の画像の中央のテキストボックス(正規表現のパターン文字列)に次のように入力します。

正規表現の文字列(何文字でもよい場合)

[0-9]+

「+」は1文字以上を意味します。「[0-9]{1,}」でも同じ意味になります。

注意点

必ず1文字以上入力させる場合は「必須」をONにする

正規表現の設定だけでは「何も入力しない」ことは防げないので、1文字以上の入力を必要とする場合は上記の設定のほか、設定画面右下の「必須」のトグルスイッチをクリックしてONにしてください。

「数値」「数字」や「数値」「整数」を設定した場合

上記の2つ目の画像の2つのプルダウンで「数値」「数字」を選択したり「数値」「整数」を選択した場合も数字だけを入力させることができます。
ただし「数値」「数字」の場合は小数が入力できるほかマイナスの数値も入力可能となります。また、「数値」「整数」の場合は小数は入力できませんがマイナスの数値が入力可能です。
そしていずれの場合も字数を制限できないので注意してください。