ルール説明

本ページでは、現在実装されている 4 つの検証モードのみを説明します。ページの結論は validator-rules.jsvalidator.jsvalidator-tests.js と一致します。

対象は `general`、`account_name`、`unified_qualification`、`attachment_filename` の 4 モードです。現行のルールセットに含まれないモードは説明対象にしていません。

文字集合

文字が有効かどうかは、現行のルールセットに明示された許可文字集合で決まります。Unicode 範囲の近似や曖昧な推測ルールは使っていません。

一般利用可能文字セット

一般

現行ルールで採用している一般非漢字文字と、第一〜第四水準漢字をまとめた文字集合です。`general` モードではこの全体セットを使用します。

全角空白 半角カナ

口座名義情報の文字セット

口座名義

口座名義向けに定義された専用文字集合です。明示された半角文字だけを許可し、ASCII 範囲の近似では置き換えません。

A-Z 0-9 ア-ン \

第三水準漢字と第四水準漢字

モード差分

第三・第四水準漢字は一般ホワイトリストには含まれますが、`unified_qualification` と `attachment_filename` では丸ごと除外します。

現行ルール外の文字

ホワイトリスト外

現行の許可集合に含まれない文字は、現在のモードでそのまま無効になります。`①`、`㈱`、emoji がこの例です。

😀

検証モード

現在の実装では、現行ルールセットに含まれる 4 モードだけを扱います。

一般
一般利用可能文字セットを使います。一般非漢字文字と、すべての JIS 水準漢字を含みます。`Ⅰ` と `Ⅲ` は有効、`①` と絵文字は無効です。
口座名義
口座名義向けの専用文字セットだけを使います。半角の口座名義例 `ヤマダ タロウ` は有効、`株式会社` は無効です。半角空白は有効で、全角空白は無効です。
統一資格審査
一般利用可能文字セットを土台にしつつ、第三水準漢字と第四水準漢字を除外します。`﨑` が無効になるのは、異体字推測ではなく第三水準漢字集合に属しているためです。
添付ファイル名
`unified_qualification` と同じ第三・第四水準漢字の除外ルールを使います。これらの文字に対する判定結果は両モードで一致します。

判定例

現在実装されている重要な境界ケースをまとめています。内容は自動テストと一致します。

一般 口座名義 統一資格審査 添付ファイル名 根拠
有効 無効 有効 有効 一般文字セットには `Ⅰ` が含まれますが、口座名義向け文字集合には含まれません。
有効 無効 有効 有効 `Ⅲ` も `Ⅰ` と同じく一般ホワイトリストの文字であり、既定で無効表示してはいけません。
無効 無効 無効 無効 `①` は現行の許可文字ホワイトリストに含まれていません。
有効 無効 無効 無効 `﨑` は第三水準漢字に属します。`general` では許可され、`unified_qualification` と `attachment_filename` では除外されます。`account_name` にも含まれません。
株式会社 有効 無効 有効 有効 この文字列は `account_name` では無効ですが、一般文字全体として無効と説明してはいけません。
ヤマダ タロウ 有効 有効 有効 有効 合法な半角口座名義の例であり、`account_name` モードのテストケースでもあります。
 (全角空白) 有効 無効 有効 有効 全角空白は一般ホワイトリストに含まれますが、`account_name` の口座名義情報文字集合には含まれません。