From 703e03aba33f234712206769f57717ba7d92d23d Mon Sep 17 00:00:00 2001 From: LinuxWizard42 Date: Wed, 12 Oct 2022 22:54:37 +0300 Subject: Added export_allowed file to make repository visible in cgit --- node_modules/matcher/readme.md | 120 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 node_modules/matcher/readme.md (limited to 'node_modules/matcher/readme.md') diff --git a/node_modules/matcher/readme.md b/node_modules/matcher/readme.md new file mode 100644 index 0000000..962070a --- /dev/null +++ b/node_modules/matcher/readme.md @@ -0,0 +1,120 @@ +# matcher [![Build Status](https://travis-ci.com/sindresorhus/matcher.svg?branch=master)](https://travis-ci.com/sindresorhus/matcher) + +> Simple [wildcard](https://en.wikipedia.org/wiki/Wildcard_character) matching + +Useful when you want to accept loose string input and regexes/globs are too convoluted. + +## Install + +``` +$ npm install matcher +``` + +## Usage + +```js +const matcher = require('matcher'); + +matcher(['foo', 'bar', 'moo'], ['*oo', '!foo']); +//=> ['moo'] + +matcher(['foo', 'bar', 'moo'], ['!*oo']); +//=> ['bar'] + +matcher.isMatch('unicorn', 'uni*'); +//=> true + +matcher.isMatch('unicorn', '*corn'); +//=> true + +matcher.isMatch('unicorn', 'un*rn'); +//=> true + +matcher.isMatch('rainbow', '!unicorn'); +//=> true + +matcher.isMatch('foo bar baz', 'foo b* b*'); +//=> true + +matcher.isMatch('unicorn', 'uni\\*'); +//=> false + +matcher.isMatch('UNICORN', 'UNI*', {caseSensitive: true}); +//=> true + +matcher.isMatch('UNICORN', 'unicorn', {caseSensitive: true}); +//=> false + +matcher.isMatch(['foo', 'bar'], 'f*'); +//=> true + +matcher.isMatch(['foo', 'bar'], ['a*', 'b*']); +//=> true + +matcher.isMatch('unicorn', ['tri*', 'UNI*'], {caseSensitive: true}); +//=> false +``` + +## API + +It matches even across newlines. For example, `foo*r` will match `foo\nbar`. + +### matcher(inputs, patterns, options?) + +Accepts an array of `input`'s and `pattern`'s. + +Returns an array of `inputs` filtered based on the `patterns`. + +### matcher.isMatch(input, pattern, options?) + +Accepts either a string or array of strings for both `input` and `pattern`. + +Returns a `boolean` of whether any given `input` matches every given `pattern`. + +#### input + +Type: `string | string[]` + +String or array of strings to match. + +#### options + +Type: `object` + +##### caseSensitive + +Type: `boolean`\ +Default: `false` + +Treat uppercase and lowercase characters as being the same. + +Ensure you use this correctly. For example, files and directories should be matched case-insensitively, while most often, object keys should be matched case-sensitively. + +#### pattern + +Type: `string | string[]` + +Use `*` to match zero or more characters. A pattern starting with `!` will be negated. + +## Benchmark + +``` +$ npm run bench +``` + +## Related + +- [matcher-cli](https://github.com/sindresorhus/matcher-cli) - CLI for this module +- [multimatch](https://github.com/sindresorhus/multimatch) - Extends `minimatch.match()` with support for multiple patterns + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
-- cgit v1.2.3-86-g962b