RegExp.prototype.source
La propriété source
renvoie une chaîne de caractères qui contient le texte du motif à rechercher (pattern), sans les barres obliques (slashes). C'est une propriété en lecture seule liée à l'instance. source
ne contient aucun des options ou drapeaux (flags) (tels que "g", "i" ou "m") de l'expression rationnelle.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
Attributs de RegExp.prototype.source |
|
---|---|
Écrivable | Non |
Énumérable | Non |
Configurable | Oui |
Exemples
Utiliser source
var regex = /totoMachin/ig;
console.log(regex.source); // "totoMachin"
Les expressions ratonnelles vides et l'échappement
À partir d'ECMAScript 5, la propriété source
ne renvoie plus une chaîne vide pour les expressions rationnelles vides. Elle renvoie la chaîne "(?:)"
. De plus, les fins de lignes (telles que "\n") sont désormais échappées.
new RegExp().source; // "(?:)"
new RegExp('\n').source === "\n"; // true avant ES5
new RegExp('\n').source === "\\n"; // true à partir d'ES5
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Définition initiale. Implémentée avec JavaScript 1.2. Avec JavaScript 1.5 : source est une propriété de l'instance de RegExp , ce n'est pas une propriété de l'objet RegExp . |
ECMAScript 5.1 (ECMA-262) La définition de 'RegExp.prototype.source' dans cette spécification. |
Standard | source renvoie désormais "(?:)" (et non "") pour les expressions vides. La définition du comportement pour les échappements a été ajoutée. |
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'RegExp.prototype.source' dans cette spécification. |
Standard | source est désormais un accesseur lié au prototype plutôt qu'une propriété directement rattachée à l'instance. |
ECMAScript (ECMA-262) La définition de 'RegExp.prototype.source' dans cette spécification. |
Standard évolutif |
Compatibilité des navigateurs
BCD tables only load in the browser