在前面Flex中利用RegExp类正则表达式功能对用户Flash Player版本信息进行解析的例子中,我们了解了Flex中如何利用RegExp类正则表达式功能,对用户Flash Player版本信息进行解析。接下来的例子演示了Flex中如何利用正则表达式对数据进行验证。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整实现代码(或点击这里察看):
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
-
- <mx:Script>
- <![CDATA[
- private const postalcode_regex:RegExp = /^[A-Z][0-9][A-Z] [0-9][A-Z][0-9]$/i;
-
- private function validatePostalCode(evt:Event):void {
- if (postalcode_regex.test(ti1text)) {
- ti1.errorString = null;
- } else {
- ti1.errorString = postalCode_errorString;
- }
- }
- ]]>
- </mx:Script>
-
- <mx:String id="ti1text">{ti1.text}</mx:String>
- <mx:String id="postalCode_errorString">
- <![CDATA[Please enter a valid postal code in "L9L 9L9" format.]]>
- </mx:String>
-
- <mx:Form>
- <mx:FormItem label="Postal Code:" required="true">
- <mx:TextInput id="ti1"
- maxChars="7"
- restrict="A-Z 0-9"
- change="validatePostalCode(event)" />
- </mx:FormItem>
- </mx:Form>
-
- </mx:Application>