- PR -

正規表現について

1
投稿者投稿内容
由加
常連さん
会議室デビュー日: 2008/04/02
投稿数: 34
投稿日時: 2008-05-26 14:37
こんにちは。
環境はASP.NET 2.0です。
非常に初歩的な質問ですみません。
テキストボックスに対して、1〜50文字までの任意の文字の入力を可能にしたいと思っています。
RegularExpressionValidatorコントロールのValidationExpressionに"\s{1,50}"とあいた場合、未入力判断されません。
RequiredFieldValidatorコントロールも組み合わせると、意図した動作にはなるのですが、
この場合、テキストボックスの横にエラーであることを表示する「*」マーク(ValidatorのTextプロパティの値)位置がずれてしまいます。
できればRegularExpressionValidatorコントロールのValidationExpressionだけで行いたいと思っています。
正規表現の本を買ってみたのでが、なかなかわからず、こちらに投稿させていただきました。

よろしくお願いします。
RapidExpress
常連さん
会議室デビュー日: 2007/11/11
投稿数: 42
お住まい・勤務地: おおさか
投稿日時: 2008-05-26 15:04
RegularExpressionValidatorとRequiredFieldValidatorのDisplayプロパティを
確認してみてください。「Static」から「Dynamic」に変更すればずれないと思います。
(ちゃんと詰めて置かないとずれますが)
_________________
//---
 あやのこうじ@RapidExpress
rain
ぬし
会議室デビュー日: 2006/10/19
投稿数: 549
投稿日時: 2008-05-26 15:11
回答は既にあるので補足説明をば。

RegularExpressionValidator クラス より:
引用:

メモ :
入力コントロールが空の場合、検証は成功します。関連付けられた入力コントロールに値が必要な場合は、RegularExpressionValidator コントロールに加えて、RequiredFieldValidator コントロールを使用します。


※RequiredFieldValidator 以外の検証コントロールの説明にも、同様の説明があると思います。

というわけで、入力が空の場合を弾くには RequiredFieldValidator コントロールを併用するようにしてください。
由加
常連さん
会議室デビュー日: 2008/04/02
投稿数: 34
投稿日時: 2008-05-26 16:30
ありがとうございます。
「Static」から「Dynamic」に変更し、
表示位置を合わせればよいのですね。
正規表現もよく理解していないまま、
RegularExpressionValidator だけで行おうとしていました。
1

スキルアップ/キャリアアップ(JOB@IT)