RegExp.prototype.hasIndices
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die hasIndices
-Zugriffsproprietät von RegExp
Instanzen gibt zurück, ob das d
-Flag mit diesem regulären Ausdruck verwendet wird.
Probieren Sie es aus
const regex1 = new RegExp("foo", "d");
console.log(regex1.hasIndices);
// Expected output: true
const regex2 = new RegExp("bar");
console.log(regex2.hasIndices);
// Expected output: false
Beschreibung
RegExp.prototype.hasIndices
hat den Wert true
, wenn das d
-Flag verwendet wurde; ansonsten false
. Das d
-Flag zeigt an, dass das Ergebnis eines Matches eines regulären Ausdrucks die Start- und Endindizes der Teilzeichenfolgen jeder Erfassungsgruppe enthalten soll. Es ändert in keiner Weise die Interpretation oder das Verhalten des regulären Ausdrucks beim Matchen, sondern liefert nur zusätzliche Informationen im Match-Ergebnis.
Dieses Flag beeinflusst hauptsächlich den Rückgabewert von exec()
. Wenn das d
-Flag vorhanden ist, besitzt das von exec()
zurückgegebene Array eine zusätzliche indices
-Eigenschaft, wie in der Rückgabewertbeschreibung der Methode exec()
beschrieben. Da alle anderen regex-bezogenen Methoden (wie String.prototype.match()
) exec()
intern aufrufen, geben sie die Indizes ebenfalls zurück, wenn der reguläre Ausdruck das d
-Flag besitzt.
Der Set-Zugriffsmechanismus von hasIndices
ist undefined
. Sie können diese Eigenschaft nicht direkt ändern.
Beispiele
Es gibt ein detaillierteres Nutzungsbeispiel unter Gruppen und Rückverweise > Verwendung von Gruppen und Match-Indizes.
Verwendung von hasIndices
const str1 = "foo bar foo";
const regex1 = /foo/dg;
console.log(regex1.hasIndices); // true
console.log(regex1.exec(str1).indices[0]); // [0, 3]
console.log(regex1.exec(str1).indices[0]); // [8, 11]
const str2 = "foo bar foo";
const regex2 = /foo/;
console.log(regex2.hasIndices); // false
console.log(regex2.exec(str2).indices); // undefined
Spezifikationen
Specification |
---|
ECMAScript® 2025 Language Specification # sec-get-regexp.prototype.hasIndices |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
hasIndices |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support