ant-path-matcher-browser

0.0.1 • Public • Published

Ant-style Path Matcher

An implementation for Ant-style path patterns.
Part of this mapping code has been kindly borrowed from Apache Ant and Spring Framework.

The mapping matches URLs using the following rules:

  • ? matches one character
  • * matches zero or more characters
  • ** matches zero or more directories in a path
  • {spring:[a-z]+} matches the regexp [a-z]+ as a path variable named "spring"

Some examples:

  • com/t?st.jsp — matches com/test.jsp but also com/tast.jsp or com/txst.jsp
  • com/*.jsp — matches all .jsp files in the com directory
  • com/**/test.jsp — matches all test.jsp files underneath the com path
  • org/springframework/**/*.jsp — matches all .jsp files underneath the org/springframework path
  • org/**/servlet/bla.jsp — matches org/springframework/servlet/bla.jsp but also org/springframework/testing/servlet/bla.jsp and org/servlet/bla.jsp
  • com/{filename:\w+}.jsp will match com/test.jsp and assign the value test to the filename variable

Installation

npm install ant-path-matcher --save

Usage

// or: import AntPathMatcher from 'ant-path-matcher'
var AntPathMatcher  = require('ant-path-matcher')

var matcher = new AntPathMatcher() ;

function match( pattern , path) {
 
  console.log( pattern , path , matcher.match( pattern,path)) ;
}

match( '/path/**/?z','/path/x/y/z/xyz') ;

match('/foo/{id}/bar','/foo/1/bar') ;

Readme

Keywords

Package Sidebar

Install

npm i ant-path-matcher-browser

Weekly Downloads

0

Version

0.0.1

License

MIT

Unpacked Size

9.85 kB

Total Files

3

Last publish

Collaborators

  • maksymkononenko