今まで、正規表現って PHP で行っていたのですが、HTML5 なら HTML 側で入力値をチェックできるとのこと。
使う機会がなかったので、今まで知りませんでしたが、これは便利そう。
ただ、「送信」などのボタンを押した後に、入力値のチェックを行うので、入力自体は出来てしまうんですよね。
使い方は、下記の通りです。
1 2 3 4 | < form > < input type = "text" name = "userid" pattern = "^[0-9A-Za-z]+$" > < input type = "submit" value = "送信" > </ form > |
input タグに pattern 属性があるので、ここに正規表現を記述するだけです。
なお、正規表現で記述した文字列のパターンに一致しない場合は、下記のようにエラーメッセージが表示されます。
わざわざエラー文を表示する手間が省けて、これ良いですね!
見た目が買えられないのが難点かなとも思いますが、シンプルでわかりやすいので、このデザインでも問題なさそう。
と、いうことでHTMLで入力チェックをする方法でした。
…正規表現、覚えよう…。
最後に、よく使うのにすぐ忘れる、メールアドレスを判断するための正規表現をメモ。
1 2 | // メールアドレス ^[0-9a-z_./?-]+@([0-9a-z-]+\.)+[0-9a-z-]+$ |