Folgendes soll gematcht werden:
en/0/index.html
de/1/2/index.html
Also hexadezimaler String und dann ein Slash, und das ganze unendlich oft möglich, dann 'index.html'? Oder seh ich das falsch?
Ist die dritte Gruppe aber 'index.html' bzw. 'index', dann soll diese ignoriert werden.
Meinst du, wenn da _nur_ 'index.html' oder 'index' steht, wird nicht gematcht?
Folgende Regex habe ich schon vorbereitet:
([a-zA-Z0-9_]+)
Bei der Sammelgruppe solltest du auch weitere Werte der ASCII-Codetabelle erlauben. Also '[a-zA-Z0-9_\x7f-\xff]'.
/([a-zA-Z0-9_]+)
Siehe oben.
/*
Was soll denn das? Das erlaubt eine unendliche Anzahl von Slash hintereinander. Was hat das für einen Sinn?
([a-zA-Z0-9_]*)
1)Siehe oben, 2) Warum hast du hier nicht ein '+' als Wiederholungszeichen, sondern den '*'?
/*
Siehe oben.
.*
Jetzt erlaubst du irgendein Zeichen. Was bringt denn das wieder?
Hinzu müsste was ähnliches wie:
^(index)
Sowas gibts nicht.
..aber wie genau und wo? In die letzte Klammer? Vor oder nach dem Sternchen?
Das geht man etwas anders an bzw. es ergibt sich von selbst
Danke für eure Vorschläge!
Da mir noch nicht einmal klar ist, auf was denn der Regex matchen soll, und der Regex sowieso eigenartig ist, kann ich dir nicht helfen. Beschreib genauer, auf was gematcht werden soll.
mfg
Rato
§§§
Meine Postings basieren lediglich auf mein Wissen und können völliger Blödsinn sein.
§§§