URLPattern: hasRegExpGroups-Eigenschaft
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die hasRegExpGroups
schreibgeschützte Eigenschaft der URLPattern
-Schnittstelle ist ein Boolean, der angibt, ob einer der URLPattern
-Komponenten reguläre Ausdrucksgruppen enthält oder nicht.
Sie können die hasRegExpGroups
-Eigenschaft verwenden, um zu überprüfen, ob ein URLPattern
-Objekt mit bestimmten Webplattform-APIs verwendbar ist, die keine regulären Ausdrucksgruppen erlauben. Zum Beispiel:
- Die
match
-Direktive imUse-As-Dictionary
HTTP-Header verbietet reguläre Ausdrucksgruppen, sowie - die
urlPattern
-Bedingung beim Hinzufügen statischer Routen mit der MethodeInstallEvent.addRoutes()
.
Wert
Ein Boolean.
Beispiele
Verwendung von hasRegExpGroups
Im folgenden Beispiel wird ein URLPattern
-Objekt mit einem Gruppentrenner verwendet, der benannte Ausdrucksgruppen namens "id" und "title" enthält. Die hasRegExpGroups
-Eigenschaft gibt in diesem Fall true
zurück.
const pattern = new URLPattern({ pathname: "/blog/:id(\\d+){-:title}?" });
console.log(pattern.hasRegExpGroups); // true
const result = pattern.exec({ pathname: "/blog/123-some-article" });
console.log(result.pathname.groups); // {id: '123', title: 'some-article'}
Es funktioniert auch mit anonymen Ausdrucksgruppen.
const pattern = new URLPattern({ pathname: "/blog/(\\d+)" });
console.log(pattern.hasRegExpGroups); // true
const result = pattern.exec({ pathname: "/blog/123" });
console.log(result.pathname.groups); // {0: '123'}
Für andere nicht-kapturierende Gruppen, zum Beispiel bei Verwendung von Platzhaltern (*
), gibt hasRegExpGroups
false
zurück.
const pattern = new URLPattern({ pathname: "/blog/*" });
console.log(pattern.hasRegExpGroups); // false
const result = pattern.exec({ pathname: "/blog/123" });
console.log(result.pathname.groups); // {0: '123'}
Spezifikationen
Specification |
---|
URL Pattern # dom-urlpattern-hasregexpgroups |