正規表現チェック
最終更新日: 2020年10月27日
R8 | R9
電話番号の項目に「数字の4桁-4桁-4桁」というルール(正規表現式)を指定した例を図1に示します。
入力文字に文字が含まれているため、エラーになっていることがわかります。
モデル項目の詳細定義ダイアログで「入力チェック」タブをクリックして開きます。
「d{1,4}」は、1つから4つまでの数字が入ることを意味します。
警告を表示しますが、ここで保存ボタンを押下すると登録自体は妨げないという設定を行う場合は、入力欄右側のリストボックスから「警告」を指定します。(空欄時は、エラーのときは登録できないようになります。)
JavaとJavaScriptの両方で使える構文は次の通りです。
次の例は、よくある正規表現の利用例です。ご参考ください。
Wagby の標準的な設定では「全角文字のみ入力可能」というルールは実現できません。
そこで、次のように設定します。
実装イメージ
定義方法
「正規表現」欄に以下の式を入力します。
\d{1,4}?-?\d{1,4}?-?\d{1,4}
「-?」は、「-」があってもなくてもよいということを意味します。
警告の設定
仕様・制約
利用できる構文
構文
説明
x
文字x
\
次の文字をエスケープする
\\
バックスラッシュ文字
\xhh
16進値0xhhを持つ文字
\uhhhh
16進値0xhhhhを持つ文字
\t
タブ文字 (\u0009)
\n
改行文字 (\u000A)
\r
キャリッジ・リターン文字 (\u000D)
\f
用紙送り文字 (\u000C)
\cx
xに対する制御文字
[abc]
a、b、またはc (単純クラス)
[^abc]
a、b、c以外の文字(否定)
[a-zA-Z]
a-zまたはA-Z (範囲)
.
任意の文字(行末記号とマッチする場合もある)
\d
数字:[0-9]
\D
数字以外:[^0-9]
\s
空白文字:[\t\n\x0B\f\r]
\S
非空白文字:[^\s]
\v
垂直方向の空白文字:[\n\x0B\f\r\x85\u2028\u2029]
\w
単語構成文字:[a-zA-Z_0-9]
\W
非単語文字:[^\w]
^
行の先頭
$
行の末尾
\b
単語境界
\B
非単語境界
X?
X、1または0回
X*
X、0回以上
X+
X、1回以上
X{n}
X、n回
X{n,}
X、n回以上
X{n,m}
X、n回以上、m回以下
X??
X、1または0回
X*?
X、0回以上
X+?
X、1回以上
X{n}?
X、n回
X{n,}?
X、n回以上
X{n,m}?
X、n回以上、m回以下
XY
Xの直後にY
X|Y
XまたはY
(X)
X、前方参照を行う正規表現グループ
(?:X)
X、前方参照を行わない正規表現グループ
(?=X)
X、幅ゼロの肯定先読み
(?!X)
X、幅ゼロの否定先読み
よく使う正規表現
JavaとJavaScriptの両方で使えるものとなっています。
テーマ
書式
電話番号 \d{1,4}?-\d{1,4}?-\d{1,4}
携帯電話番号 090-\d{4}-\d{4}
郵便番号(※2) ^\d{1,3}-\d{1,4}$
生年月日 \d{4}-\d{2}-\d{2}
アルファベットを含まない文字列 [^a-zA-Z]+
半角スペースを含まない文字列 [^ ]+
全角および半角スペースを含まない文字列 [^ ]+
数字を含まない文字列 [^0-9]+
特定の文字のみを認める
(全角50音ひらがな、全角50音カタカナ、全角数字、半角数字、半角ハイフン)[ぁ-んァ-ン0-90-9\-]+
空白以外のすべての文字を認める \S+
数字以外のすべての文字を認める \D+
[^0-9]+
アルファベットとアンダースコア以外のすべての文字を認める \W+
[^a-zA-Z0-9_]+
半角英小文字のみを認める [a-z]+
半角英小文字以外のみを認める(英大文字、数字、全角文字など含む) [^a-z]+
半角英大文字のみを認める [A-Z]+
半角英大文字以外のみを認める(英小文字、数字、全角文字など含む) [^A-Z]+
全角文字のみ入力可能とする (日本)
許容文字種の設定では全角漢字のチェック、または空白文字(スペース)が半角か全角かのチェックという指定になります。
[^\x20-\x7e\uff61-\uff9f]*