urlpattern
Match and parse URLs against a pattern via the URLPattern API.
Import: @rtorcato/browser-common/urlpattern
๐ MDN: URLPattern
createURLPattern throws where URLPattern is unsupported (Chrome/Edge + Safari 18.4+; Firefox behind a flag) โ guard with isURLPatternAvailable() first.
Browser supportโ
| API | Chrome | Edge | Firefox | Safari | iOS Safari | Baseline |
|---|---|---|---|---|---|---|
URLPattern | โ 95+ | โ 95+ | โ 142+ | โ 26+ | โ 26+ | Newly available |
โ
supported ยท โ partial ยท โ not supported ยท [n] see note. Generated from MDN browser-compat-data and web-features. caniuse: URLPattern
Exampleโ
import {
isURLPatternAvailable,
createURLPattern,
matchURLPattern,
} from '@rtorcato/browser-common/urlpattern'
if (isURLPatternAvailable()) {
const pattern = createURLPattern({ pathname: '/users/:id' })
const match = pattern.exec('https://example.com/users/42')
const result = matchURLPattern({ pathname: '/users/:id' }, 'https://example.com/users/42')
result?.pathname.groups.id // '42'
}
Exportsโ
isURLPatternAvailable()โ feature checkcreateURLPattern(input, baseURL?)โ returns aURLPatterninstancematchURLPattern(pattern, input)โ tests a URL against a pattern, returns the match result ornull
See the API reference for full signatures.