| Пакет | 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] используется для перехода к первому соответствию подстроки.
Скрыть синтаксис MXMLThe <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):voidnoMatchError | свойство |
noMatchError:String| Язык версии: | ActionScript 3.0 |
| Версия продукта: | Flex 3 |
| Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Сообщение об ошибке при отсутствии соответствий регулярному выражению. Значение по умолчанию: «Недопустимое поле».
Реализация
public function get noMatchError():String public function set noMatchError(value:String):voidRegExpValidator | () | Конструктор |
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
Показать синтаксис MXML