アカウント課金なしで使える1日5円の多機能メールフォームがリリース 簡単につくれて売り上げアップ

講習会参加申し込み自動化GASサンプル3(項目チェック)

GASサンプル回答の検証GASサンプル
この記事は約3分で読めます。

講習会参加申し込み自動化GASサンプルの処理の流れの概略が出来てきたので、各入力項目の簡単なチェック機能を追加します。

入力項目の簡単なチェック

Eメールアドレスの検証

Eメールアドレスに関しては、 以下の様な形式チェック手順が一般的です。

メール形式チェック
メールアドレスチェック
 var validationEmail = FormApp.createTextValidation().requireTextIsEmail().build();
 form.addTextItem().setTitle('顧問メールアドレス').setRequired(true).setValidation(validationEmail);

上記の顧問メールアドレス入力項目へのチェックは、以下の方法で行われています。

  1. FormAppクラスのcreateTextValidation()メソッドを使ってオブジェクト作成
  2. TextValidationオブジェクトにrequireTextIsEmail()クラスで適用する検証ルールを指定
  3. build() メソッドで回答の検証ルールを設定。
  4. 入力項目に上記で作成した回答の検証ルールを設定する。

電話番号の検証

電話番号のチェックには、正規化チェックが使われます。
今回は、簡単に固定電話は市外局番から携帯電話はそのまま連続して入力してもらうことにしました。(0から始まる数字4~13桁の検証)

電話番号 回答の検証
var validationphone = FormApp.createTextValidation().requireTextMatchesPattern('^0[0-9]{4,13}$').build();
form.addTextItem().setTitle('顧問電話番号').setValidation(validationphone);

正規化表現による回答の検証

電話番号の形式チェックは、下記の項目で行われています。

  1. FormAppクラスのcreateTextValidation()メソッドを使ってオブジェクト作成
  2. TextValidationオブジェクトにrequireTextMatchesPattern()クラスで正規化表現との一致チェックを行う検証ルールを適用
  3. build() メソッドで回答の検証ルールを設定。
  4. 電話番号入力項目に上記で作成した回答の検証ルールを設定する。

TextValidationBuilderクラスが持つ他の検証メソッドは、下記のGoogle Apps Scriptリファレンスの(Class TextValidationBuilder)で確認できます。

Class TextValidationBuilder  |  Apps Script  |  Google Developers

Googleフォーム 回答の検証で使う正規化パターンの意味

サンプルでの正規化パターン^0[0-9]{4,13}$の意味は、以下の内容を表しています。

  1. ^ 正規表現の先頭 。
  2. 0 先頭数字が0。
  3. [0-9] 数字の0~9までのいずれかの値。
  4. {4,13}直前の数字[0~9]の桁数が4桁から13桁
  5. $ 正規化表現の終了

正規化表現で使用する記号は下記リファレンスに記載されています。

フォームのルールを設定する - ドキュメント エディタ ヘルプ
フォーム記入時のルールを作成し、そのルールに従って回答が記入されるように設定できます。たとえばメールアドレスの入力を求める場合、適切
タイトルとURLをコピーしました