match-path-plus
Powered by path-to-regexp
.
Install
yarn add match-path-plus
import
//es6//es5const matchPath mapSearchParams =
Usage
//typescript/** * entry */ const cache = /** * Converts path to a regex, if a match is found then we extract params from it * @param routePattern * @param url * @param regOptions path-to-regexp options */ { const pathToMatch = '/' search = '' = url let regexp = cache if !regexp const keys = // path-to-regexp options regOptions = ...regOptions sensitive: false strict: false end: false regexp = pattern: keys cache const m = regexppattern if !m return null const path = m0 const params = Object for let i = 1; i < mlength; i += 1 paramsregexpkeysi - 1name = // Add querystring params Object return path: path === '' ? '/' : path params } /** * Maps a querystring to an object * Supports arrays and utf-8 characters * @param search * @returns */ { let params = {} let params_re = /=?/g if search !== -1 search = search1 search return params}