• 设为首页  加入收藏
  • 您好,欢迎来虚拟主机评测网 免费收录IDC商家
  • Flex 中字符串查找

    [ 2009-08-09 00:11 ]

    String类提供indexOf和lastIndexOf两个方法。通过这两个方法可以访问到指定字符串在当前字符串中,出现的位置。如下代码所示。

    var flexstr:String=”Adobe Flex Builder3”;
    trace(flexstr.indexOf(“Flex”)); //输出6
    trace(flexstr.indexOf(“e”,6)); //输出8
    trace(flexstr.lastIndexOf(“e”)); //输出16
    trace(flexstr.lastIndexOf(“e”,10)); //输出8


    使用indexOf方法的时候,返回的整数值是指定字符串在当前字符串出现的第一个位置。如果给出参数,则表明从参数指定的位置开始进行查找,返回从给定参数的位置开始的出现指定字符串的第一个位置。

    使用lastIndexOf方法的时候,是从右至左进行参数的查找。返回指定字符串从右至左出现的第一个位置。同样如果给出参数,则表明从给定参数的位置从右至左进行查找,返回从指定参数的位置开始从右至左出现的字符串的第一个位置。

    String 类还提供search方法和match方法进行字符串处理。search方法和indexOf方法处理的过程类似。不同之处在于Search方法完全支持正则表达式。ActionScript 3.0中,完全支持正则表达式。通过正则表达式的使用可以进行高级的子串处理。如下代码所示。

    var flexstr:String=”Adobe Flex Builder3”;
    var subflexstr:String=”B”;
    var flexreg:RegExp=/B/i; //声明正则表达式
    trace(flexstr.search(subflexstr); //输出11
    trace(flexstr.search(flexreg)); //输出3

    上面的代码中正则表达式“/B/i”中,“/B”表示字符“B”,而“/i”表示忽略大小写。关于正则表达式在本书中不做详细的说明。读者有兴趣的话可以查看一些关于正则表达式的资料。

    match方法的使用与search一样,不同之处在于match方法返回一个Array类型的值。这个Array类型包含所有符合查询条件的字符串。