Il existe deux façons de créer une occurrence d’expression régulière. L’une des méthodes consiste à utiliser des barres obliques (
/
) pour délimiter l’expression régulière, et l’autre consiste à utiliser le constructeur
new
. Par exemple, les expressions régulières suivantes sont équivalentes :
var pattern1:RegExp = /bob/i;
var pattern2:RegExp = new RegExp("bob", "i");
Des barres obliques délimitent un littéral d’expression régulière de la même façon que des guillemets délimitent un littéral de chaîne. La partie de l’expression régulière contenue entre les barres obliques définit le
modèle.
L’expression régulière peut également inclure des
indicateurs
après la barre de délimitation finale. Ces indicateurs sont considérés comme faisant partie de l’expression régulière, mais ils sont séparés de son modèle.
Lorsque vous utilisez le constructeur
new
, vous utilisez deux chaînes pour définir l’expression régulière. La première chaîne définit le modèle, et la seconde les indicateurs, comme dans l’exemple suivant :
var pattern2:RegExp = new RegExp("bob", "i");
Lorsque vous incluez une barre oblique
dans
une expression régulière qui est définie à l’aide de délimiteurs de barre oblique, vous devez faire précéder la barre oblique du caractère d’échappement (
\
). Par exemple, l’expression régulière suivante correspond au modèle
1/2
:
var pattern:RegExp = /1\/2/;
Pour inclure des guillemets
dans
une expression régulière définie avec le constructeur
new
, vous devez ajouter un caractère d’échappement (
\
) avant les guillemets (comme lorsque vous définissez un littéral String). Par exemple, les expressions régulières suivantes correspondent au modèle
eat at "joe's"
:
var pattern1:RegExp = new RegExp("eat at \"joe's\"", "");
var pattern2:RegExp = new RegExp('eat at "joe\'s"', "");
N’utilisez pas le caractère d’échappement avec des guillemets dans des expressions régulières définies à l’aide des délimiteurs de barre oblique. De même, n’utilisez pas le caractère d’échappement avec des barres obliques dans des expressions régulières définies avec le constructeur
new
. Les expressions régulières suivantes sont équivalentes. Elles définissent le modèle
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"', '');
De même, dans une expression régulière définie à l’aide du constructeur
new
, tapez deux fois le caractère barre oblique inverse pour utiliser une métaséquence débutant par le caractère barre oblique inverse(
\
), telle que
\d
(qui correspond à n’importe quel chiffre).
var pattern:RegExp = new RegExp("\\d+", ""); // matches one or more digits
Vous devez taper deux fois le caractère barre oblique inverse, car le premier paramètre de la méthode constructeur
RegExp()
est une chaîne. Dans un littéral de chaîne, ce caractère doit être entré deux fois pour être interprété comme une barre oblique inverse unique.
La section qui suit décrit la syntaxe servant à définir des modèles d’expression régulière.
Pour plus d’informations, voir
Indicateurs et propriétés
.