Ich hatte eine Anforderung der Analyse einer Reihe von URLs und Extrahieren bestimmter Elemente aus URLs unter besonderen Bedingungen. Um zu erklären, es weiter, sollten Sie eine Reihe von Urls:JS Regex: Parse URLs mit Bedingungen
http://www.example.com/appName1/some/extra/parts/keyword/rest/of/the/url http://www.somewebsite.com/appName2/some/extra/parts/keyword/rest/of/the/url http://www.someothersite.com/appname3/rest/of/the/url
Wie Sie sehen können, gibt es zwei Sätze von Urls, man das Wort „Stichwort“ drin hat und andere, die das nicht tun. In meinem Code erhalte ich den Teil der URL nach dem Domain-Namen (zB:/appName1/einige/extra/teile/keyword/rest/of/the/url).
Ich habe zwei Aufgaben, eine Überprüfung, ob das Wort "Schlüsselwort" in der URL vorhanden ist, und zweitens, nur wenn "Schlüsselwort" nicht in URL vorhanden ist, parse die URL, um die beiden Gruppen als abzurufen appName und Rest der URL (zB: grp 1. appName3 und grp 2. Rest/von/die/URL für URL 3, da es kein "Schlüsselwort" darin hat). Das Ganze sollte in einem Regex gemacht werden.
Mein Fortschritt:
konnte ich den Namen der Anwendung und der Rest der URL in Gruppen analysieren, war aber nicht in der Lage, den Zustand zu übernehmen.
ich einen Weg Stiche auswählen zu müssen „Schlüsselwort“ nicht darin fand heraus, ich bin nicht sicher, ob es der richtige Weg ist, es zu tun:
^((?!.\*keyword).\*)$
- nächsten die beide oben genannten zu kombinieren, habe ich versucht, etwas, das ich nach einer langen Suche gefunden habe, die die Syntax
(?(?=regex)then|else)
Reference hat. Und das Ergebnis war:(?(?=^((?!.*keyword).*)$)\1)
Aber es sagt ungültigen Gruppenstruktur.
Ich hatte viele stackoverflow-Einträge und Tutorials durchlaufen, konnte aber die tatsächliche Anforderung nicht erreichen. Bitte hilf mir, das zu lösen.
_“einfängt Ich habe zwei Aufgaben "_ Was ist zweite Aufgabe? – guest271314
Gruppieren Sie die Komponenten basierend auf dem Ergebnis der ersten Aufgabe (Filter-URLs ohne Schlüsselwort). Tut mir leid, dass ich nicht klar bin, ich habe meine Frage bearbeitet. – T90
Wenn "Schlüsselwort" in der Zeichenfolge ist, tun Sie nichts? – guest271314