URL-Übereinstimmungsmuster
Kurzübersicht
Übereinstimmungsmuster sind eine Möglichkeit, Gruppen von URLs anzugeben: Ein Übereinstimmungsmuster entspricht einem bestimmten Satz von URLs.
Übereinstimmung der Musterstruktur
Alle Übereinstimmungsmuster werden als Zeichenfolgen angegeben. Übereinstimmungsmuster bestehen aus drei Teilen: Schema, Host und Pfad. Das Schema und der Host sind durch :// getrennt.
<scheme>://<host><path>
Schema
Die Schemakomponente kann eine der folgenden sein: http oder https.
Host
Die Hostkomponente kann eine von drei Formen annehmen:
Formular | Übereinstimmungen |
* | Jeder Host. |
*. Gefolgt von einem Teil des Hostnamens | Der bestimmte Host und jede seiner Subdomänen. |
Ein kompletter Hostname ohne Platzhalter | Nur der bestimmte Host. |
Der Host muss keine Port-Nummer enthalten.
* Beachten Sie, dass der Platzhalter nur zu Beginn angezeigt werden kann.
Pfad
Die Pfadkomponente muss mit a / beginnen.
Danach kann es anschließend jede Kombination des *-Platzhalters und jedes der Zeichen enthalten, die in URL-Pfaden oder Abfragezeichenfolgen zulässig sind. Im Gegensatz zu Host , die Pfadkomponente kann den *-Platzhalter in der Mitte oder am Ende enthalten, und die *-Platzhalter können mehr als einmal angezeigt werden.
Der Wert für den Pfad stimmt mit der Zeichenfolge überein, die der URL-Pfad plus die URL-Abfragezeichenfolge ist. Dies beinhaltet ? zwischen den beiden, wenn die Abfragezeichenfolge in der URL vorhanden ist.
Wenn Sie beispielsweise URLs in jeder Domäne abgleichen möchten, in der der URL-Pfad mit foo.bar endet, müssen Sie ein Array von Übereinstimmungsmustern wie ['*://*/*foo.bar', '*://**foo.bar?*'] verwenden. Das ?* wird benötigt, anstatt nur bar*, um die Endung * als Anwendung auf die URL-Abfragezeichenfolge und nicht auf einen Teil des URL-Pfads zu verankern.
Weder die URL-Fragmentkennung noch das #, das ihm vorausgeht, werden als Teil des Pfads betrachtet .
Beispiele
Muster | Beispielübereinstimmungen | Beispiel Nicht-Übereinstimmungen |
https://*/path Stimmen Sie HTTPS-URLs auf jedem Host ab, dessen Pfad „Pfad“ ist. |
https://mozilla.org/path https://a.mozilla.org/path https://something.com/path |
http://mozilla.org/path (nicht übereinstimmendes Schema) https://mozilla.org/path/ (nicht übereinstimmender Pfad) https://mozilla.org/a (nicht übereinstimmender Pfad) https://mozilla.org/ https://mozilla.org/path?foo=1 |
https://*/path/ Stimmen Sie HTTPS-URLs auf jedem Host ab, dessen Pfad „path/“ ist und der keine URL-Abfragezeichenfolge hat. |
https://mozilla.org/path/ https://a.mozilla.org/path/ https://something.com/path/ |
http://mozilla.org/path/ (nicht übereinstimmendes Schema) https://mozilla.org/path (nicht übereinstimmender Pfad) https://mozilla.org/a (nicht übereinstimmender Pfad) https://mozilla.org/ https://mozilla.org/path/?foo=1 |
https://mozilla.org/* Stimmen Sie HTTPS-URLs nur bei „mozilla.org“ mit jedem URL-Pfad und URL-Abfragezeichenfolge ab. |
https://mozilla.org/ https://mozilla.org/path https://mozilla.org/another https://mozilla.org/path/to/doc https://mozilla.org/path/to/doc?foo=1 |
http://mozilla.org/path (unmatched scheme) https://mozilla.com/path (unmatched host) |
https://mozilla.org/a/b/c/ Stimmen Sie nur diese URL oder diese URL mit einem beliebigen URL-Fragment ab. |
https://mozilla.org/a/b/c/ https://mozilla.org/a/b/c/#section1 |
Alles andere. |
https://mozilla.org/*/b/*/ Stimmen Sie HTTPS-URLs ab, die auf „mozilla.org“ gehostet werden, deren Pfad eine Komponente „b“ irgendwo in der Mitte enthält. Passt URLs mit Abfragezeichenfolgen ab, wenn die Zeichenfolge mit a / endet. |
https://mozilla.org/a/b/c/ https://mozilla.org/d/b/f/ https://mozilla.org/a/b/c/d/ https://mozilla.org/a/b/c/d/#section1 https://mozilla.org/a/b/c/d/?foo=/ https://mozilla.org/a?foo=21314&bar=/b/&extra=c/ |
https://mozilla.org/b/*/ (nicht übereinstimmender Pfad) https://mozilla.org/a/b/ (nicht übereinstimmender Pfad) https://mozilla.org/a/b/c/d/?foo=bar (nicht übereinstimmender Pfad aufgrund der URL-Abfragezeichenfolge) |
Ungültige Übereinstimmungsmuster
Ungültiges Muster | Grund |
resource://path/ | Nicht unterstütztes Schema. |
https://mozilla.org | Kein Pfad. |
https://mozilla.*.org/ | "*" im Host muss am Anfang stehen. |
https://*zilla.org/ | "*" im Host muss das einzige Zeichen sein oder von "." gefolgt werden. |
http*://mozilla.org/ | "*" im Schema muss das einzige Zeichen sein. |
https://mozilla.org:80/ | Der Host muss keine Port-Nummer enthalten. |
https://* | Leerer Pfad: Dies sollte „https://*/*“ sein. |
URL-Übereinstimmungsmuster vs Regex-Erklärung
WalkMe bietet zwei Optionen für die Erweiterungskonfiguration – URL-Übereinstimmungsmuster und Regex. Jede Option hat ihre eigenen Vorteile, und unten finden Sie einen kurzen Überblick über beide Tools.
Was ist Regex und URL Match Pattern?
URL-Übereinstimmungsmuster ist eine Möglichkeit, einer Browsererweiterung mitzuteilen, auf welchen Webseiten sie funktionieren soll. Es verwendet eine spezielle Syntax, um die URLs anzugeben, auf die die Erweiterung gelten soll. Es ist eine Möglichkeit, Muster zu definieren, die URLs entsprechen. Diese Muster können verwendet werden, um zu bestimmen, mit welchen Webseiten eine Erweiterung bei der Anwendung von Funktionen wie Inhaltsskripten oder Hintergrundskripts interagieren soll. URL-Übereinstimmungsmuster wurden für den spezifischen Zweck entwickelt, das Verhalten von Browsererweiterungen auf der Grundlage der von ihnen angetroffenen URLs zu steuern.
Regex (regulärer Ausdruck) oft als regex oder regexp abgekürzt, ist eine leistungsstarke Sequenz von Zeichen, die ein Suchmuster definiert. Es wird für den Musterabgleich innerhalb von Zeichenfolgen verwendet, sodass Sie Aufgaben wie die Suche nach bestimmten Mustern, das Extrahieren von Informationen oder das Ersetzen von Teilen eines Textes durchführen können. Regex ist ein vielseitiges Werkzeug, das in der Textverarbeitung, Datenvalidierung und verschiedenen Programmieraufgaben weit verbreitet ist.
Vergleich
URL-Übereinstimmungsmuster | Regex | |
Zweck | Erstellt und optimiert für Webbrowser, um zu definieren, auf welche URLs eine Browsererweiterung oder Anwendung gelten soll. | Leistungsstarkes Tool für den Musterabgleich in Zeichenfolgen. Es ermöglicht Ihnen, ein Suchmuster mit einer Kombination von Zeichen und Meta-Zeichen zu definieren. |
Verwendung | Wird von Browsererweiterungen verwendet, um anzugeben, auf welchen Webseiten sie arbeiten sollen, wie Inhaltsskripts oder Hintergrundskripts. | Kann in einer Vielzahl von Anwendungen wie Textverarbeitung, Datenvalidierung, Such- und Ersetzungsoperationen und mehr verwendet werden. |
Syntax | URL-Übereinstimmungsmuster verwenden eine bestimmte Syntax, die Platzhalterzeichen wie „*“ und „?“ enthält, um Muster für URLs anzugeben. | Regex-Muster werden unter Verwendung einer bestimmten Syntax ausgedrückt, die Metacharacter wie „.“ (entspricht einem beliebigen Zeichen), „*“ (entspricht null oder mehreren Vorkommen), „+“ (entspricht einem oder mehreren Vorkommen) usw. enthält. |
Beispiel | Das Muster https://example.com/* entspricht jeder URL, die mit https://example.com/ beginnt. | Diese Regex ^(http|https)://example\.com(?:/[^/?#]+)*$ entspricht URLs, die zur Domäne example.com gehören. |
Vor- und Nachteile
URL-Übereinstimmungsmuster | Regex | |
Pros |
Einfachheit für die URL-Übereinstimmung : Speziell für die Übereinstimmung von URLs entwickelt, so dass es intuitiv und einfach für diesen Zweck zu verwenden ist. Einfach zu verstehen : URL-Übereinstimmungsmuster sind im Vergleich zu komplexen Regex tendenziell besser lesbar und unkomplizierter. Erstellt für Browsererweiterungen : Die Verwendung von URL-Übereinstimmungsmustern ist oft die empfohlene und standardmäßige Möglichkeit, um anzugeben, mit welchen URLs Ihre Erweiterung interagieren soll. |
Allgemeiner Zweck: Extrem vielseitig und kann für eine Vielzahl von Aufgaben zum Musterabgleich über nur URLs hinaus verwendet werden. Es ist ein leistungsstarkes Tool für die Textverarbeitung und Manipulation. Rich Syntax : Bietet einen reichen Satz von Metacharactern und Ausdrücken, die einen hochpräzisen Musterabgleich und eine Manipulation ermöglichen. Musterflexibilität: Kann komplexe Muster behandeln, die über URL-Strukturen hinausgehen. Dies beinhaltet die Übereinstimmung bestimmter Zeichen, Sequenzen oder Zeichensätze. |
Nachteile |
Beschränkt auf URL-Übereinstimmung : Spezifisch für übereinstimmende URLs und sind nicht für allgemeine Musterabgleichaufgaben geeignet. Mangel an Komplexität: Fehlen der umfangreiche Funktionsumfang und die Flexibilität regulärer Ausdrücke. Sie sind nicht für Aufgaben geeignet, die einen komplizierten Musterabgleich über URL-Strukturen hinaus erfordern. Nicht für alle Anwendungen geeignet: Sie sind speziell für Webbrowser-Erweiterungen zugeschnitten. Wenn Sie an Aufgaben außerhalb dieses Bereichs arbeiten, sind sie möglicherweise nicht relevant. |
Komplexität: Das Schreiben komplexer regulärer Ausdrücke kann schwierig und fehleranfällig sein. Es kann Zeit dauern, um die Syntax zu meistern. Leistungsgemeinkosten : Extrem komplexe Regex-Muster können zu starken Auswirkungen auf die Leistung führen, insbesondere bei großen Eingaben. Lesbarkeit : Komplexe Regex-Muster können schwer zu lesen und zu verstehen sein, was die Wartung und das Debugging erschwert. |
Offizielle WalkMe-Erklärung
WalkMe empfiehlt die Verwendung von URL-Übereinstimmungsmustern für die Erweiterungskonfiguration, wenn der Anwendungsfall dies zulässt. Wir betrachten Regex als letzten Ausweg, wenn es einen Randfall gibt. Das URL-Übereinstimmungsmuster garantiert eine nahtlose Erweiterungsfunktionalität und minimiert die Validierung der Regeln hinter den Kulissen, was auch ein besseres Benutzererlebnis bietet.
Das URL-Übereinstimmungsmuster ist derzeit als Standardtool für jede neue Systemkonfiguration in den Erweiterungseinstellungen von Admin Center festgelegt.