Propriedade de lastIndex

Retorna a posição do caractere onde a próxima correspondência começa em uma seqüência de caracteres pesquisada.

{RegExp | reArray}.lastIndex

Argumentos

  • RegExp
    Obrigatório. O global RegExp objeto.

  • reArray
    Obrigatório. Uma matriz retornada pela exec o método de um A expressão Regular objeto.

Comentários

O lastIndex propriedade é baseado em zero, isto é, o índice do primeiro caractere é zero. Seu valor inicial é de – 1. Seu valor é modificado sempre que uma correspondência correta é feita.

O lastIndex propriedade da RegExp objeto é modificado pela exec e teste métodos da RegExp objeto e o match, Substituir, e Dividir métodos da String objeto.

As seguintes regras se aplicam aos valores de lastIndex:

  • Se não houver nenhuma correspondência, lastIndex é definido como -1.

  • Se lastIndex é maior que o comprimento da seqüência de caracteres, teste e exec falha e lastIndex é definido como -1.

  • Se lastIndex é igual ao comprimento da seqüência de caracteres, correspondências de expressões regulares, se o padrão coincide com a seqüência de caracteres vazia. Caso contrário, a correspondência falhará e lastIndex é redefinido como -1.

  • Caso contrário, lastIndex é definida para a próxima posição seguindo a correspondência mais recente.

O valor inicial do RegExp.lastIndex é de propriedade – 1. Seu valor é somente leitura e será alterada sempre que uma correspondência bem-sucedida é feita.

ObservaçãoObservação

As propriedades de RegExp objeto não estão disponíveis quando executado em modo rápido, o padrão para JScript. Para compilar um programa a partir da linha de comando que usa essas propriedades, você deve desativar a opção rápida usando /fast-. Não é seguro desativar a opção rápida na ASP.NET por causa de problemas de threading.

Exemplo

O exemplo a seguir ilustra o uso de lastIndex propriedade. Esta função itera uma seqüência de pesquisa e imprime o índice e lastIndex valores para cada palavra na seqüência de caracteres.

var src : String = "The quick brown fox jumps over the lazy dog.";
var re : RegExp = /\w+/g;
var arr : Array;
while ((arr = re.exec(src)) != null)
{
    print(arr.index + "-" + arr.lastIndex + "\t" + arr[0]);
}

A saída deste programa é:

0-3     The
4-9     quick
10-15   brown
16-19   fox
20-25   jumps
26-30   over
31-34   the
35-39   lazy
40-43   dog

Requisitos

Versão 3

Se aplica A:

Objeto RegExp

Consulte também

Referência

Método de EXEC

Conceitos

Sintaxe de expressão regular