パッケージmx.validators
クラスpublic class RegExpValidator
継承RegExpValidator Inheritance Validator Inheritance EventDispatcher Inheritance Object

RegExpValidator クラスでは、正規表現を使用してフィールドを検証できます。 expression プロパティを使用してバリデータに正規表現を渡します。正規表現のパターンマッチングを制御するフラグがあれば、flags プロパティを使用して渡します。

バリデータが検証対象のフィールドで正規表現に一致するものを検出できた場合、検証は成功です。 バリデータが、一致を検出できなかった場合は、検証エラーが発生します。

RegExpValidator クラスは、valid イベントと invalid イベントを送出します。invalid イベントの場合、イベントオブジェクトは ValidationResultEvent クラスのインスタンスで、ValidationResult オブジェクトの配列を含んでいます。

一方、valid イベントでは、ValidationResultEvent オブジェクトに RegExpValidationResult オブジェクトの配列が格納されます。 RegExpValidationResult クラスは ValidationResult クラスの子クラスで、次のような正規表現で使用される追加のプロパティを含んでいます。

MXML のシンタックスexpandedMXML シンタックスを隠す

The <mx:RegExpValidator> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:

  <mx:RegExpValidator
    expression="No default" 
    flags="No default" 
    noExpressionError="The expression is missing." 
    noMatchError="The field is invalid." 
  />
  

例を表示

関連項目

mx.validators.RegExpValidationResult
mx.validators.ValidationResult
RegExp


パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
 Inheritedenabled : Boolean
この値を false に設定すると、バリデータによる検証が行えなくなります。
Validator
  expression : String
検証に使用する正規表現を表します。
RegExpValidator
  flags : String
一致処理を行う場合に用いられる正規表現フラグを表します。
RegExpValidator
 Inheritedlistener : Object
検証のリスナーを指定します。
Validator
  noExpressionError : String
正規表現が指定されていない場合に発生するエラーメッセージを表します。
RegExpValidator
  noMatchError : String
正規表現と一致するデータが存在しない場合に発生するエラーメッセージを表します。
RegExpValidator
 Inheritedproperty : String
検証する値を含む source オブジェクトのプロパティの名前を指定するストリングを表します。
Validator
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
 Inheritedrequired : Boolean = true
true の場合、検証エラーの原因となる欠損値または空値を指定します。
Validator
 InheritedrequiredFieldError : String
値が欠損し、required プロパティが true の場合に発生するエラーメッセージです。
Validator
 Inheritedsource : Object
検証するプロパティを含むオブジェクトを指定します。
Validator
 Inheritedtrigger : IEventDispatcher
バリデータをトリガするイベントの生成を行うコンポーネントを指定します。
Validator
 InheritedtriggerEvent : String
検証をトリガするイベントを指定します。
Validator
プロテクトプロパティ
 プロパティ定義元
 InheritedactualListeners : Array
[読み取り専用] リスナーオブジェクトが存在する場合はリスナーオブジェクトを含みます。そうでない場合は、ソースオブジェクトを含みます。
Validator
 InheritedactualTrigger : IEventDispatcher
[読み取り専用] トリガオブジェクトが存在する場合はトリガオブジェクトを含みます。そうでない場合は、ソースオブジェクトを含みます。
Validator
 InheritedresourceManager : IResourceManager
[読み取り専用] アプリケーションのローカライズされたすべてのリソースを管理するオブジェクトへの参照です。
Validator
 InheritedsubFields : Array
validate() メソッドに渡された value オブジェクトに含まれるプロパティ名を含むストリングの配列です。
Validator
パブリックメソッド
 メソッド定義元
  
コンストラクタ
RegExpValidator
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
MXML タグを使用してバリデータを作成したときに、MXML コンパイラによって自動的に呼び出されます。
Validator
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
validate(value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
検証を実行し、リスナーに任意で結果を通知します。
Validator
 Inherited
validateAll(validators:Array):Array
[静的] validators 配列に含まれるすべてのバリデータを呼び出します。
Validator
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
プロテクトメソッド
 メソッド定義元
 Inherited
バリデータから送出された valid イベントおよび invalid イベントのすべてのリスナーを設定します。
Validator
  
[override] 正規表現の妥当性を検証する上で基本クラスの doValidation() メソッドをオーバーライドします。
RegExpValidator
 Inherited
検証するオブジェクトを返します。
Validator
 Inherited
エラー結果の配列から ValidationResultEvent を返します。
Validator
 Inherited
value が null でない場合、true を返します。
Validator
 Inherited
バリデータから送出された valid イベントおよび invalid イベントのすべてのリスナーを切断します。
Validator
 Inherited
このメソッドは、バリデータが作成されたときと、ResourceManager が "change" イベントを送出してローカライズされたリソースが何らかの点で変更されたことを示すときに再び呼び出されます。
Validator
イベント
 イベント 概要 定義元
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
 Inherited検証が失敗すると送出されます。Validator
 Inherited検証が正常に完了すると送出されます。Validator
プロテクト定数
 定数定義元
 InheritedDECIMAL_DIGITS : String = "0123456789"
[静的] 0 から 9 の 10 進数字を含むストリングです。
Validator
 InheritedROMAN_LETTERS : String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
[静的] ローマ字アルファベットの大文字と小文字を含む("A" から "Z"、および "a" から "z")ストリングです。
Validator
プロパティの詳細
expressionプロパティ
expression:String

検証に使用する正規表現を表します。



実装
    public function get expression():String
    public function set expression(value:String):void
flagsプロパティ 
flags:String

一致処理を行う場合に用いられる正規表現フラグを表します。



実装
    public function get flags():String
    public function set flags(value:String):void
noExpressionErrorプロパティ 
noExpressionError:String

正規表現が指定されていない場合に発生するエラーメッセージを表します。 デフォルト値は "式がありません" です。



実装
    public function get noExpressionError():String
    public function set noExpressionError(value:String):void
noMatchErrorプロパティ 
noMatchError:String

正規表現と一致するデータが存在しない場合に発生するエラーメッセージを表します。 デフォルト値は "フィールドが無効です" です。



実装
    public function get noMatchError():String
    public function set noMatchError(value:String):void
コンストラクタの詳細
RegExpValidator()コンストラクタ
public function RegExpValidator()

コンストラクタ

メソッドの詳細
doValidation()メソッド
override protected function doValidation(value:Object):Array

正規表現の妥当性を検証する上で基本クラスの doValidation() メソッドをオーバーライドします。

このメソッドはユーザーが直接呼び出すものではなく、妥当性を検証する際に Flex から呼び出されます。 Validator クラスをカスタムで作成する場合は、このメソッドを実装する必要があります。

パラメータ

value:Object — 検証するオブジェクトです。

戻り値
Array — 無効な結果における ValidationResult オブジェクトの配列です。このオブジェクトは、検証が行われるフィールドごとに 1 つ含まれます。
例の使用法
RegExValidatorExample.mxml
<?xml version="1.0"?> 
<!-- Simple example to demonstrate the RegExpValidator. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[
            import mx.events.ValidationResultEvent;
            import mx.validators.*;
    
            // Write the results to the 
            private function handleResult(eventObj:ValidationResultEvent):void {
                if (eventObj.type == ValidationResultEvent.VALID)
                {
                    // For valid events, the results Array contains
                    // RegExpValidationResult objects.
                    var xResult:RegExpValidationResult;
                    reResults.text="";
                    for (var i:uint = 0; i < eventObj.results.length; i++)
                    {
                        xResult = eventObj.results[i];
                        reResults.text=reResults.text + xResult.matchedIndex + " " +
                            xResult.matchedString + "\n";
                    }
                }
                else
                {
                    reResults.text="";            
                }        
            }
        ]]>
    </mx:Script>

    <mx:RegExpValidator id="regExpV" 
        source="{regex_text}" property="text" 
        flags="g" expression="{regex.text}" 
        valid="handleResult(event)" invalid="handleResult(event)"
        trigger="{myButton}" triggerEvent="click"/>
    
   <mx:Panel title="RegExpValidator Example" width="95%" height="95%" 
        paddingTop="5" paddingLeft="5" paddingRight="5" paddingBottom="5">
   
        <mx:Text width="100%" text="Instructions:"/>
        <mx:Text width="100%" text="1. Enter text to search. By default, enter  a string containing the letters ABC in sequence followed by any digit."/>
        <mx:Text width="100%" text="2. Enter the regular expression. By default, enter ABC\d."/>
        <mx:Text width="100%" text="3. Click the Button control to trigger the validation."/>
        <mx:Text width="100%" text="4. The results show the index in the text where the matching pattern begins, and the matching pattern. "/>
   
        <mx:Form>
            <mx:FormItem label="Enter text: ">
                <mx:TextInput id="regex_text" text="xxxxABC4xxx" width="100%"/>
            </mx:FormItem>

            <mx:FormItem label="Enter regular expression: ">
                <mx:TextInput id="regex" text="ABC\d" width="100%"/>
            </mx:FormItem>

            <mx:FormItem label="Results: ">
                <mx:TextInput id="reResults" width="100%"/>
            </mx:FormItem>

            <mx:FormItem >
                <mx:Button id="myButton" label="Validate"/>
            </mx:FormItem>
        </mx:Form>
    </mx:Panel>
</mx:Application>




 

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/mx/validators/RegExpValidator.html