wildcard-named

1.1.1 • Public • Published

wildcard-named

Greenkeeper badge Build Status License npm version npm downloads

A small and easy-to-use utility module for matching strings using named and/or unnamed wildcards for JavaScript.

Installation

$ npm install wildcard-named

Usage

import wildcard from "wildcard-named";

Basic example

import wildcard from "wildcard-named";
 
wildcard("//blog.com/page/14", "//blog.com/page/[digit:page]");
// { page: '14' }
 
wildcard("abc-123:d2f", "[digit:a]-[alpah:b]:[alnum:c]");
// { a: 'abc', b: '123', c: 'd2f' }

Unnamed wildcards

import wildcard from "wildcard-named";
 
wildcard("a-b-c", "[alpah:]-[alpah:]-[alpah:]");
// { 0: 'a', 1: 'b', 2: 'c' }

Unmatched wildcards

When the pattern cannot be resolved, it will return null.

import wildcard from "wildcard-named";
 
wildcard("a-b-c", "[alpah:]");
// null

Wildcards

You can add your own filters using the .addFilter(filter, regex) function, like this:

import wildcard from "wildcard-named";
 
wildcard.addFilter("testA", "(.*?)");
wildcard.addFilter("testB", "([0-9])");
 
wildcard("match-1", "[testA:a]-[testB:b]");
// { a: 'match', b: '1' }

All registered filters are stored in a Map at wildcard.filters.

Predefined wildcards

Filter Regex
digit ([0-9]+)
alnum ([0-9A-Za-z]+)
alpah ([A-Za-z]+)
xdigit ([0-9A-Fa-f]+)
punct ([\p{P}\d]+)
print ([\x20-\x7e]*)
upper ([A-Z]+)
lower ([a-z]+)
all (.*?)

Tests

$ npm test

Package Sidebar

Install

npm i wildcard-named

Weekly Downloads

9

Version

1.1.1

License

MIT

Unpacked Size

13.1 kB

Total Files

12

Last publish

Collaborators

  • bartozzz