Flash / Flex / ActionScript/Regular Expressions/lastIndex

Материал из Web эксперт
Перейти к: навигация, поиск

lastIndex property is set to a different value

 
package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var reCase:RegExp = new RegExp("abc", "ig");
        var sVal:String = "aBcdefabCdefABC";
        var aMatch:Array = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex); 
        reCase.lastIndex = 0;
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        reCase.lastIndex = 0;
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        reCase.lastIndex = 0;
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        reCase.lastIndex = 0;
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);

    }
  }
}



read and write to this property to move the starting point of the next match

 

package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var reCase:RegExp = new RegExp("abc", "ig");
        var sVal:String = "aBcdefabCdefABC";
        var aMatch:Array = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
        aMatch = reCase.exec(sVal);
        trace(aMatch + " - " + reCase.lastIndex);
    }
  }
}



The lastMatch property is the string containing the last match made by the regular expression

 
 
package{
  import flash.display.Sprite;
  
  public class Main extends Sprite{
    public function Main(){
        var reCase:RegExp = new RegExp("def", "gi");
        var sVal = new String("abcdefghi");
        var sMatches:Array = sVal.match(reCase);
        trace(reCase.lastMatch); // Displays: def
    }
  }
}