Antal captures i regex udtryk
Hej,Jeg har i en applikation brug for på forhånd at analysere et regex-udtryk for at finde ud af hvor mange mulige captures, et given regex-udtryk kan returnere.
Lad os sige jeg har følgende regex udtryk:
(\d{5,5})-(?:\w-)?(\d+).(\d+)
For det blotte øje er det "nemt" at se, at der er 4 captures, hvor af den ene er optional og skal ignoreres pga. "?:". Dvs. jeg får 3 captures.
Mit problem er nu, hvordan får jeg smartest analyseret dette udtryk i min applikation?
Jeg har tænkt, at jeg måske kan søge udtrykket igennem og finde alle start- og slutparenteser og ud fra deres placering (og evt. de omkringliggene tegn) bestemme antallet af captures.
Det skal siges, at der aldrig vil optræde nestede parenteser.
Jeg håber, min problemstilling giver mening, og at I kan hjælpe :)