Package | mx.validators |
Class | public class RegExpValidator |
Inheritance | RegExpValidator Validator flash.events.EventDispatcher |
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
expression
property, and additional flags
to control the regular expression pattern matching
using the flags
property.
The validation is successful if the validator can find a match of the regular expression in the field to validate. A validation error occurs when the validator finds no match.
The RegExpValidator class dispatches the valid
and invalid
events.
For an invalid
event, the event object is an instance
of the ValidationResultEvent class, and it contains an Array
of ValidationResult objects.
However, for a valid
event, the ValidationResultEvent
object contains an Array of RegExpValidationResult objects.
The RegExpValidationResult class is a child class of the
ValidationResult class, and contains additional properties
used with regular expressions, including the following:
matchedIndex
An integer that contains the starting
index in the input String of the match.matchedString
A String that contains the substring
of the input String that matches the regular expression.matchedSubStrings
An Array of Strings that contains
parenthesized substring matches, if any. If no substring matches are found,
this Array is of length 0. Use matchedSubStrings[0] to access the
first substring match.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." />
See also
Property | Defined By | ||
---|---|---|---|
enabled : Boolean
Setting this value to false will stop the validator
from performing validation. | Validator | ||
expression : String
The regular expression to use for validation. | RegExpValidator | ||
flags : String
The regular expression flags to use when matching. | RegExpValidator | ||
listener : Object
Specifies the validation listener. | Validator | ||
noExpressionError : String
Error message when there is no regular expression specifed. | RegExpValidator | ||
noMatchError : String
Error message when there are no matches to the regular expression. | RegExpValidator | ||
property : String
A String specifying the name of the property
of the source object that contains
the value to validate. | Validator | ||
required : Boolean
If true, specifies that a missing or empty
value causes a validation error. | Validator | ||
requiredFieldError : String
Error message when a value is missing and the
required property is true. | Validator | ||
source : Object
Specifies the object containing the property to validate. | Validator | ||
trigger : IEventDispatcher
Specifies the component generating the event that triggers the validator. | Validator | ||
triggerEvent : String
Specifies the event that triggers the validation. | Validator |
Method | Defined By | ||
---|---|---|---|
Constructor
| RegExpValidator | ||
initialized(document:Object, id:String):void
Called automatically by the MXML compiler when the Validator
is created using an MXML tag. | Validator | ||
validate(value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
Performs validation and optionally notifies
the listeners of the result. | Validator | ||
validateAll(validators:Array):Array [static]
Invokes all the validators in the validators Array. | Validator |
Method | Defined By | ||
---|---|---|---|
addListenerHandler():void
Sets up all of the listeners for the
valid and invalid
events dispatched from the validator. | Validator | ||
doValidation(value:Object):Array [override]
Override of the base class doValidation() method
to validate a regular expression. | RegExpValidator | ||
getValueFromSource():Object
Returns the Object to validate. | Validator | ||
handleResults(errorResults:Array):ValidationResultEvent
Returns a ValidationResultEvent from the Array of error results. | Validator | ||
isRealValue(value:Object):Boolean
Returns true if value is not null. | Validator | ||
removeListenerHandler():void
Disconnects all of the listeners for the
valid and invalid
events dispatched from the validator. | Validator | ||
resourcesChanged():void
This method is called when a Validator is constructed,
and again whenever the ResourceManager dispatches
a "change" Event to indicate
that the localized resources have changed in some way. | Validator |
expression | property |
expression:String
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
The regular expression to use for validation.
public function get expression():String
public function set expression(value:String):void
flags | property |
flags:String
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
The regular expression flags to use when matching.
public function get flags():String
public function set flags(value:String):void
noExpressionError | property |
noExpressionError:String
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
Error message when there is no regular expression specifed. The default value is "The expression is missing."
public function get noExpressionError():String
public function set noExpressionError(value:String):void
noMatchError | property |
noMatchError:String
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
Error message when there are no matches to the regular expression. The default value is "The field is invalid."
public function get noMatchError():String
public function set noMatchError(value:String):void
RegExpValidator | () | Constructor |
public function RegExpValidator()
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
Constructor
doValidation | () | method |
override protected function doValidation(value:Object):Array
Language Version : | ActionScript 3.0 |
Product Version : | Flex 3 |
Runtime Versions : | Flash Player 9, AIR 1.1 |
Override of the base class doValidation()
method
to validate a regular expression.
You do not call this method directly; Flex calls it as part of performing a validation. If you create a custom Validator class, you must implement this method.
Parameters
value:Object — Object to validate.
|
Array — For an invalid result, an Array of ValidationResult objects,
with one ValidationResult object for each field examined by the validator.
|
<?xml version="1.0" encoding="utf-8"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!-- Simple example to demonstrate the RegExpValidator. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx: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 = ""; } } ]]> </fx:Script> <fx:Declarations> <mx:RegExpValidator id="regExpV" source="{regex_text}" property="text" flags="g" expression="{regex.text}" valid="handleResult(event)" invalid="handleResult(event)" trigger="{myButton}" triggerEvent="click"/> </fx:Declarations> <s:Panel title="RegExpValidator Example" width="75%" height="75%" horizontalCenter="0" verticalCenter="0"> <s:VGroup left="10" right="10" top="10" bottom="10"> <s:Label width="100%" text="Instructions:"/> <s:Label width="100%" text="1. Enter text to search. By default, enter a string containing the letters ABC in sequence followed by any digit."/> <s:Label width="100%" text="2. Enter the regular expression. By default, enter ABC\d."/> <s:Label width="100%" text="3. Click the Button control to trigger the validation."/> <s:Label 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:"> <s:TextInput id="regex_text" text="xxxxABC4xxx" width="100%"/> </mx:FormItem> <mx:FormItem label="Enter regular expression:"> <s:TextInput id="regex" text="ABC\d" width="100%"/> </mx:FormItem> <mx:FormItem label="Results:"> <s:TextInput id="reResults" width="100%"/> </mx:FormItem> <mx:FormItem > <s:Button id="myButton" label="Validate"/> </mx:FormItem> </mx:Form> </s:VGroup> </s:Panel> </s:Application>