Regexp being not my strength, I would like some help on this one, if it is even possible:
I need to create a regexp that recursively matches a RESTful path. The purpose is to create a Symfony route matching this regexp. Here is some examples of what I mean by RESTful path:
/resources
/resources/123
/resources/123/children-resources
/resources/123/children-resources/123
/resources/123/children-resources/123/grandchildren-resources
And so on...
Basically, I would like this pattern to repeat itself indefinitly one or more time:
^\/[a-z]+(\-[a-z]+)*(\/[0-9]+)?$
Note that to access to a child resource, the identifier of the parent resource must be present.
I made a short list of unit tests (for two-level paths only to start) here: https://regex101.com/r/Hxg0m4/2/tests
I searched questions on the same subject, but none were really relevant to my question. I also tried some modifications on the regexp above - like using the +
sign at the end of the regexp, or use (?R)
... It never passed my unit tests.
Any help will be gladly appreciated.
P.S: This is my first question on stackoverflow, please don't hesitate to tell me how to better formulate my question.