« プログラマの「本懐」~アーキテクトという選択 | トップページ | W-ZERO3大ヒット »

2005年12月15日 (木)

英字と数字が混在した文字列のチェック

現在関わっているASP.NET開発で、パスワードを設定する項目があり、その項目に入力可能な値が「半角英字と半角数字を混在させた6文字から20文字までの文字列」という仕様となっています。当然、データベースに登録する前にパスワード含む全ての項目が仕様通りに入力されているかをチェックする必要があります。

ASP.NETでやっていますので、「6文字から20文字」のチェックはRangeValidatorコントロールを使えばOKとして、「半角英字と半角数字の混在」をどうチェックすれば良いでしょうか。ロジックでチェックしても良いのですが、RegularExpressionValidatorコントロールを使って正規表現でチェックできないかと思い、2日間考えて出てきたのが以下の正規表現です。

^[0-9]+[0-9a-zA-Z]*[a-zA-Z]+[0-9a-zA-Z]*$|^[a-zA-Z]+[0-9a-zA-Z]*[0-9]+[0-9a-zA-Z]*$

2つのValidationコントロールを使うことで、ロジック無しでチェックできました。特に正規表現は一見分かりにくいのですが、柔軟なチェックが可能です。奥が深いですね。

|

« プログラマの「本懐」~アーキテクトという選択 | トップページ | W-ZERO3大ヒット »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/150863/7625490

この記事へのトラックバック一覧です: 英字と数字が混在した文字列のチェック:

« プログラマの「本懐」~アーキテクトという選択 | トップページ | W-ZERO3大ヒット »