RegExp.prototype.source
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
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.
Exemple interactif
const regex1 = /fooBar/gi;
console.log(regex1.source);
// Expected output: "fooBar"
console.log(new RegExp().source);
// Expected output: "(?:)"
console.log(new RegExp("\n").source === "\\n");
// Expected output: true (starting with ES5)
// Due to escaping
Attributs de RegExp.prototype.source | |
---|---|
Écrivable | Non |
Énumérable | Non |
Configurable | Oui |
Exemples
>Utiliser source
js
var regex = /totoMachin/gi;
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.
js
new RegExp().source; // "(?:)"
new RegExp("\n").source === "\n"; // true avant ES5
new RegExp("\n").source === "\\n"; // true à partir d'ES5
Spécifications
Specification |
---|
ECMAScript® 2026 Language Specification> # sec-get-regexp.prototype.source> |
Compatibilité des navigateurs
Chargement…