<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/08/22/validating-data-using-regular-expressions/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white" viewSourceURL="srcview/index.html">

    <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>
