问题
I've got the URLs in the following style:
http://whatever.com/param1/val1/param2/val2
I want to match all key/value
pairs. I tried this pattern:
/^http:\/\/whatever.com(?:\/([^\/]+)\/([^\/]+))*$/g
It only matches the last key/value pair.
Unfortunately, I cannot use code to get the pairs... How can I capture all pairs?
回答1:
Try making your match non-greedy by adding a ?
after the *
:
/^http:\/\/whatever\.com\/(?:([^\/]+)\/([^\/]+)\/?)*?$/g
来源:https://stackoverflow.com/questions/7187909/select-multiple-elements-in-a-regular-expression