Hallo,

ik ben mij in de uiterst vage wereld van regex'en aan het verdiepen.

Ik stuit nu op een probleem:

ik heb deze regex geschreven:
~^(.[^/]+)/(.[^/]+)/(.[^/]+)$~i

deze match de volgende string:
iets/anders/aa

maar niet deze:
iets/anders/a

Wat doe ik fout?

Ik wil bereiken dat elke string gematched wordt die bestaat uit 1 of meer willekeurige karakters (behalve een slash) gevolgd door een slash.
Dus dit zou goed moeten zijn:
a/b/c
maar niet a//c


Wie helpt mij met de goede uitleg, en nog belangrijker wie kan mij vertellen waarom die van mij niet goed werkt.

Bedankt
Misschien dat deze beter werkt:

/^[^\/]+(?>\/[^\/]+)*$/D


Je laatste groep (lees capturing group) matched minimaal 2 tekens, die laatste "a" is er maar 1.

Reageren