Path-to-RegExp
Turn a path string such as `/user/:name` into a regular expression
...The RegExp returned by path-to-regexp is intended for ordered data (e.g. pathnames, hostnames). It can not handle arbitrarily ordered data (e.g. query strings, URL fragments, JSON, etc). When using paths that contain query strings, you need to escape the question mark (?) to ensure it does not flag the parameter as optional. Backslashes need to be escaped with another backslash in JavaScript strings. It is possible to write an unnamed parameter that only consists of a regexp. It works the same the named parameter, except it will be numerically indexed. ...