Пакет | mx.validators |
Класс | public class RegExpValidator |
Наследование | RegExpValidator Validator EventDispatcher Object |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
expression
, а дополнительные флаги для управления сопоставлением с образцом регулярного выражения – с помощью свойства flags
.
Проверка успешна, если средство проверки сможет обнаружить соответствие регулярного выражения в проверяемом поле. Если соответствие средством проверки не обнаруживается, происходит ошибка проверки.
Класс RegExpValidator передает события valid
и invalid
. Для события invalid
объект события является экземпляром класса ValidationResultEvent и содержит массив объектов ValidationResult.
Однако для события valid
объект ValidationResultEvent содержит массив объектов RegExpValidationResult. Класс RegExpValidationResult является нижестоящим классом класса ValidationResult и содержит дополнительные свойства, используемые с регулярными выражениями, включая следующие:
-
matchedIndex
– целое число с начальным индексом во входной строке соответствия. -
matchedString
– строка, с подстрокой входной строки, соответствующая регулярному выражению. -
matchedSubStrings
– массив строк, содержащий заключенные в скобки соответствия подстроки при их наличии. Если соответствий подстроки не обнаружено, этот массив имеет длину 0. matchedSubStrings[0] используется для перехода к первому соответствию подстроки.
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." />
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
enabled : Boolean
Установка этого значения на false помешает выполнению проверки средством проверки. | Validator | ||
expression : String
Регулярное выражение, используемое для проверки. | RegExpValidator | ||
flags : String
Флаги регулярных выражений для использования при обнаружении соответствий. | RegExpValidator | ||
listener : Object
Указывает прослушиватель проверки. | Validator | ||
noExpressionError : String
Сообщение об ошибке при отсутствии определенного регулярного выражения. | RegExpValidator | ||
noMatchError : String
Сообщение об ошибке при отсутствии соответствий регулярному выражению. | RegExpValidator | ||
property : String
Строка с именем свойства для объекта source, содержащего проверяемое значение. | Validator | ||
required : Boolean = true
Значение true указывает на то, что ошибка проверки вызвана отсутствующим или пустым значением. | Validator | ||
requiredFieldError : String
Сообщение об ошибке, если значение отсутствует, а свойство required имеет значение true. | Validator | ||
source : Object
Указывает объект, содержащий проверяемое свойство. | Validator | ||
trigger : IEventDispatcher
Указывает компонент, генерирующий запускающее средство проверки событие. | Validator | ||
triggerEvent : String
Указывает запускающее проверку событие. | Validator |
Метод | Определено | ||
---|---|---|---|
Конструктор
| RegExpValidator | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | ||
Посылает событие в поток событий. | EventDispatcher | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Вызывается автоматически компилятором MXML при создании класса Validator с помощью тега MXML. | Validator | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Выполняет проверку и дополнительно оповещает прослушиватели результата. | Validator | ||
[статические]
Вызывает все средства проверки в массиве validators. | Validator | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
Метод | Определено | ||
---|---|---|---|
Настраивает все прослушиватели на события valid и invalid, передаваемые из средства проверки. | Validator | ||
[переопределить]
Переопределение метода базового класса doValidation() для проверки регулярного выражения. | RegExpValidator | ||
Возвращает проверяемый объект. | Validator | ||
Возвращает ValidationResultEvent из массива результатов ошибки. | Validator | ||
Возвращает true, если value не имеет значения null. | Validator | ||
Отключает все прослушиватели для событий valid и invalid, передаваемых из средства проверки. | Validator | ||
Этот метод вызывается при создании класса Validator и каждый раз при отправке ResourceManager события change для указания изменения локализованных ресурсов сходным образом. | Validator |
expression | свойство |
flags | свойство |
noExpressionError | свойство |
noExpressionError:String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сообщение об ошибке при отсутствии определенного регулярного выражения. Значение по умолчанию: «Отсутствует выражение».
Реализация
public function get noExpressionError():String
public function set noExpressionError(value:String):void
noMatchError | свойство |
noMatchError:String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сообщение об ошибке при отсутствии соответствий регулярному выражению. Значение по умолчанию: «Недопустимое поле».
Реализация
public function get noMatchError():String
public function set noMatchError(value:String):void
RegExpValidator | () | Конструктор |
public function RegExpValidator()
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Конструктор
doValidation | () | метод |
override protected function doValidation(value:Object):Array
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Переопределение метода базового класса doValidation()
для проверки регулярного выражения.
Этот метод не вызывается напрямую; Flex вызывает его как часть выполнения проверки. Этот метод необходимо реализовать при создании пользовательского класса Validator.
Параметры
value:Object — Проверяемый объект.
|
Array — Для недопустимого значения результата массив объектов ValidationResult с одним объектом ValidationResult для каждого поля, проверяемым средством проверки.
|
<?xml version="1.0" encoding="utf-8"?> <!-- 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>
Tue Jun 12 2018, 11:34 AM Z