| Package | mx.validators |
| Class | public class RegExpValidator |
| Inheritance | RegExpValidator Validator EventDispatcher Object |
expression property를 사용해 발리 데이터에 정규 표현을 건네줍니다. 정규 표현의 패턴 매칭을 제어하는 플래그가 있으면,flags property를 사용해 건네줍니다.
발리 데이터가 검증 대상의 필드에서 정규 표현에 일치하는 것을 검출할 수 있었을 경우, 검증은 성공입니다. 발리 데이터가, 일치를 검출할 수 없었던 경우는, 검증 에러가 발생합니다.
RegExpValidator 클래스는 valid 이벤트와 invalid 이벤트를 dispatch합니다. invalid 이벤트에서는, event object가 ValidationResultEvent 클래스의 인스턴스이며, ValidationResult object의 배열을 포함합니다.
한편,valid 이벤트에서는, ValidationResultEvent object에 RegExpValidationResult object의 배열이 포함됩니다. RegExpValidationResult 클래스는 ValidationResult 클래스의 아이 클래스에서, 다음과 같은 정규 표현으로 사용되는 추가의 property를 포함하고 있습니다.
matchedIndex 는, 일치한 입력 string중의 개시 인덱스를 포함한 정수를 나타냅니다. matchedString 는, 정규 표현과 일치하는 입력 string의 substring가 포함된 string를 나타냅니다. matchedSubStrings 는, string의 배열을 나타냅니다. 일치하는 substring가 존재하는 경우는, 그 substring가 괄호에 둘러싸인 상태로 배열내에 포함됩니다. substring에 일치하는 것이 발견되지 않는 경우, 이 Array 의 길이는 0 입니다. matchedSubStrings[0] 을 사용하면 최초로 substring가 일치한 것에 액세스 할 수 있습니다.
MXML 문장구조법의 비표시
<mx:RegExpValidator> 태그는, Super 클래스의 모든 태그 속성을 Inheritance해, 다음의 태그를 추가합니다.
<mx:RegExpValidator expression="디폴트치 없음" flags="디폴트치 없음" noExpressionError="The expression is missing. " noMatchError="The field is invalid. "/>
See also
| property | 정의 | ||
|---|---|---|---|
![]() | constructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor 함수에의 참조입니다.
| Object | |
![]() | enabled : Boolean
이 값을
false 로 설정하면, 발리 데이터에 의한 검증을 실시할 수 없게 됩니다. | Validator | |
| expression : String
검증에 사용하는 정규 표현을 나타냅니다.
| RegExpValidator | ||
| flags : String
일치 처리를 실시하는 경우에 이용되는 정규 표현 플래그를 나타냅니다.
| RegExpValidator | ||
![]() | listener : Object
검증의 listener를 지정합니다.
| Validator | |
| noExpressionError : String
정규 표현이 지정되어 있지 않은 경우에 발생하는 에러 메세지를 나타냅니다.
| RegExpValidator | ||
| noMatchError : String
정규 표현과 일치하는 데이터가 존재하지 않는 경우에 발생하는 에러 메세지를 나타냅니다.
| RegExpValidator | ||
![]() | property : String
검증하는 값을 포함한
source object의 property의 이름을 지정하는 string를 나타냅니다. | Validator | |
![]() | prototype : Object
[static]
클래스 또는 함수 object의 prototype object에의 참조입니다.
| Object | |
![]() | required : Boolean
true 의 경우, 검증 에러의 원인이 되는 결손치 또는 거짓 가격을 지정합니다. | Validator | |
![]() | requiredFieldError : String
값이 결손해, 게다가
required property가 true 의 경우에 발생하는 에러 메세지입니다. | Validator | |
![]() | source : Object
검증하는 property를 포함한 object를 지정합니다.
| Validator | |
![]() | trigger : IEventDispatcher
발리 데이터를 방아쇠 하는 이벤트의 생성을 실시하는 컴퍼넌트를 지정합니다.
| Validator | |
![]() | triggerEvent : String
검증을 방아쇠 하는 이벤트를 지정합니다.
| Validator | |
| Methods | 정의 | ||
|---|---|---|---|
| RegExpValidator ()
constructor 입니다.
| RegExpValidator | ||
![]() | addEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
| EventDispatcher | |
![]() | dispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
| EventDispatcher | |
![]() | hasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
| EventDispatcher | |
![]() | hasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
| Object | |
![]() | initialized (document:Object , id:String ):void
MXML 태그를 사용해 발리 데이터를 작성했을 때에, MXML 컴파일러에 의해 자동적으로 불려 갑니다.
| Validator | |
![]() | isPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
| Object | |
![]() | propertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
| Object | |
![]() | removeEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
| EventDispatcher | |
![]() | setPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
| Object | |
![]() | toString ():String
지정된 object의 string 표현을 돌려줍니다.
| Object | |
![]() | validate (value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
검증을 실행해, 그 결과의 listener를 임의로 통지합니다.
| Validator | |
![]() | validateAll (validators:Array ):Array
[static]
validators 배열에 포함되는 모든 발리 데이터를 호출합니다. | Validator | |
![]() | valueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
| Object | |
![]() | willTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
| EventDispatcher | |
| Methods | 정의 | ||
|---|---|---|---|
![]() | addListenerHandler ():void
발리 데이터로부터 dispatch된
valid event 및 invalid 이벤트의 모든 listener를 설정합니다. | Validator | |
| doValidation (value:Object ):Array
정규 표현의 타당성을 검증하는데 있어서 기본 클래스의
doValidation() Methods를 재정의(override) 합니다. | RegExpValidator | ||
![]() | getValueFromSource ():Object
검증하는 object를 돌려줍니다.
| Validator | |
![]() | handleResults (errorResults:Array ):ValidationResultEvent
에러 결과의 배열로부터 ValidationResultEvent 를 돌려줍니다.
| Validator | |
![]() | isRealValue (value:Object ):Boolean
value 가 null 의 경우,true 를 돌려줍니다. | Validator | |
![]() | removeListenerHandler ():void
발리 데이터로부터 dispatch된
valid event 및 invalid 이벤트의 모든 listener를 절단 합니다. | Validator | |
| expression | property |
expression:String [read-write]검증에 사용하는 정규 표현을 나타냅니다.
Implements public function get expression():String
public function set expression(value:String ):void
| flags | property |
flags:String [read-write]일치 처리를 실시하는 경우에 이용되는 정규 표현 플래그를 나타냅니다.
Implements public function get flags():String
public function set flags(value:String ):void
| noExpressionError | property |
public var noExpressionError:String 정규 표현이 지정되어 있지 않은 경우에 발생하는 에러 메세지를 나타냅니다. 디폴트치는 "The expression is missing. " 입니다.
| noMatchError | property |
public var noMatchError:String 정규 표현과 일치하는 데이터가 존재하지 않는 경우에 발생하는 에러 메세지를 나타냅니다. 디폴트치는 "The field is invalid. " 입니다.
| RegExpValidator | () | constructor |
public 함수 RegExpValidator()constructor 입니다.
| doValidation | () | Methods |
protected override function doValidation(value:Object ):Array
정규 표현의 타당성을 검증하는데 있어서 기본 클래스의 doValidation() Methods를 재정의(override) 합니다.
이 Methods는 유저가 직접 호출하는 것은 아니고, 타당성을 검증할 때에 Flex 로부터 불려 갑니다. Validator 클래스를 커스텀으로 작성하는 경우는, 이 Methods를 Implements할 필요가 있습니다.
Parametersvalue:Object — 검증하는 object입니다.
|
Array —
무효인 결과에 있어서의 ValidationResult object의 배열입니다. 이 object는, 검증을 하는 필드 마다 1 개 포함됩니다.
|
<? 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://flexdocs.kr/docs/flex2/langref/mx/validators/RegExpValidator.html