Criação de uma ocorrência de uma expressão regular

Flash Player 9 e posterior, Adobe AIR 1.0 e posterior

Há duas maneiras de criar uma ocorrência de expressão regular: Um modo usa caracteres de barra ( / ) para delinear a expressão regular; o outro usa o construtor new . Por exemplo, as expressões regulares a seguir são equivalentes:

var pattern1:RegExp = /bob/i; 
var pattern2:RegExp = new RegExp("bob", "i");

As barras delineiam um literal da expressão regular da mesma forma que as aspas delineiam um literal de string. A parte da expressão regular entre as barras define o padrão. A expressão regular também pode incluir sinalizadores depois da barra delineadora final. Esses sinalizadores são considerados como parte da expressão regular, mas são separados do padrão.

Ao usar o construtor new , você usa duas strings para definir a expressão regular. A primeira string define o padrão e a segunda string define os sinalizadores como no exemplo a seguir:

var pattern2:RegExp = new RegExp("bob", "i");

Ao incluir uma barra em uma expressão regular que é definida utilizando os delineadores de barra, você deve preceder a barra com um caractere escape de barra invertida ( \ ). Por exemplo, as expressões regulares a seguir correspondem ao padrão 1/2 :

var pattern:RegExp = /1\/2/;

Para incluir aspas em uma expressão regular que é definida com o construtor new , você deve adicionar uma caractere escape de barra invertida ( \ ) antes das aspas (assim como faria ao definir qualquer literal String). Por exemplo, as expressões regulares a seguir correspondem ao padrão eat at "joe's" :

var pattern1:RegExp = new RegExp("eat at \"joe's\"", ""); 
var pattern2:RegExp = new RegExp('eat at "joe\'s"', "");

Não use o caractere escape de barra invertida com aspas em expressões regulares que são definidas utilizando os delineadores de barra. Da mesma forma, não use o caractere escape com barras em expressões regulares que são definidas utilizando o construtor new . As expressões regulares a seguir são equivalentes e definem o padrão 1/2 "joe's" :

var pattern1:RegExp = /1\/2 "joe's"/; 
var pattern2:RegExp = new RegExp("1/2 \"joe's\"", ""); 
var pattern3:RegExp = new RegExp('1/2 "joe\'s"', '');

Em uma expressão regular definida com o construtor new , para usar uma metassequência que comece com o caractere de barra invertida ( \ ) , como \d (que corresponde a qualquer dígito), digite duas vezes esse caractere de barra invertida:

var pattern:RegExp = new RegExp("\\d+", ""); // matches one or more digits

É necessário digitar o caractere de barra invertida duas vezes nesse caso, pois o primeiro parâmetro do método do construtor RegExp() é uma string, e, em um literal de string, é necessário digitar um caractere de barra invertida duas vezes para que ele seja reconhecido como um único caractere de barra invertida.

As seções a seguir descrevem a sintaxe para definir os padrões de expressões regulares.

Para obter mais informações sobre sinalizadores, consulte Sinalizadores e propriedades .