TextInput组件

使用TextInput组件的change事件监听用户输入
这里使用的过滤方法是Array类的一部分,它让你创建一个可以载入任何一个对象的方法,然后通过计算,返回一个布尔值来指明是否这一项可以被包括在过滤后的数组里。这个临时数组在检测输入的方法中创建,它包含了匹配正则表达式的所有项。
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml"
    width="400" height="300">

    <mx:Script>
        <![CDATA[
            [Bindable]
            private var probableMatches:Array;
            private var allWords:Array=

["apple","aderw","boy","cat","milk","orange","pepper","truck"];
            private var regexp:RegExp;
            private function checkInput():void{
                var i:int=0;
                var temp:Array=allWords.filter(filter);//得到过滤后的数组
                input.text=temp[0];//显示第一个值
            }
            private function filter(element:*,index:int,arr:Array):Boolean{
                regexp=new RegExp(input.text);
                return (regexp.test(element as String));
            }
        ]]>
    </mx:Script>    
    <mx:TextInput id="input" change="checkInput()"/>
</mx:Canvas>
输入a时显示applie,输入b时显示boy。。。

你可能感兴趣的:(apple,xml,正则表达式,Adobe)