本文へ移動
Wagby11
マニュアルのグループを選ぶ

WAGBY11 MANUAL / 06

正規表現によるチェック

郵便番号などの決まった入力形式を検証する方法を説明します。

最終更新日:

入力チェックの小目次へ

1. このページで伝える機能

郵便番号の桁数や区切り文字、コードの使用文字など、決まった形で入力してもらいたい項目をチェックできます。メールアドレスなどの標準パターンも利用できます。

2. Wagby11で実現できること

郵便番号を「123-4567」の形式にしています。「1234567」のようにハイフンがない入力はエラーになります。

ハイフンを含む郵便番号の形式を求める入力エラー。
ハイフンを含む郵便番号の形式を求める入力エラー。

ハイフンを付けて入力し直すと保存できます。これは文字列の形式の確認であり、郵便番号や住所の実在を照合する設定ではありません。

複数項目で許可する文字を共用する場合は、案件固有の文字集合を定義できます。

3. AIへの指示例

最小限の指示例

郵便番号は123-4567の形式だけを受け付けるようにしてください。

桁数、半角・全角、空欄の扱いなどをAIが類推して補います。形式に合わない入力を補正するのか、エラーにするのかも伝えます。

より詳細な指示例

InputCheck.postalCodeは半角数字3桁、半角ハイフン、半角数字4桁の入力全体と一致する場合だけ許可してください。自動補正せず、不一致は登録・更新のエラーにします。空欄は許可します。1234567を拒否し、123-4567を保存できることを確認してください。メールアドレスemailには標準presetのemailを使って形式を確認してください。
既存のモデル・主キー・項目・データ・権限を保持し、必要なguide・referenceを確認してください。メニューと一般利用者向け操作マニュアルを更新し、設計情報の検証・コード生成・起動を行って、正常な入力とエラーになる入力を確認してください。

4. 編集されるAppSchemaの例

以下は関連する定義の抜粋です。構文を覚えなくても、許可したい値とエラーにする条件をAIへ伝えられます。

entity:
  attributes:
    - name: 郵便番号
      name_en: postalCode
      type: string
      length: 30
      validation:
        constraints:
          - id: POSTAL_FORMAT
            type: pattern
            dialect: wagby-portable-regex-v1
            expression: '[0-9]{3}-[0-9]{4}'
            match: full
            severity: error
            message_code: error.manual.postal.format
    - name: メールアドレス
      name_en: email
      type: string
      length: 254
      validation:
        constraints:
          - { id: EMAIL_PATTERN, type: pattern, preset: email,
              severity: error, message_code: error.manual.email.format }

match: fullは入力全体の一致です。標準パターンのpresetと、独自のexpressionは分けて使います。AIには期待する形式と正常例・異常例を伝え、対応する正規表現を選んでもらえます。

5. 参考資料

guide:正規表現チェック
designer/docs/appschema/html/guide/04-validation/07-regular-expression.html
reference:validation(入力チェック定義)
designer/docs/appschema/html/reference/11-validation.html