mirror of
				https://github.com/fooflington/selfdefined.git
				synced 2025-10-30 21:58:32 +00:00 
			
		
		
		
	multimatch 
Extends
minimatch.match()with support for multiple patterns
Install
$ npm install multimatch
Usage
const multimatch = require('multimatch');
multimatch(['unicorn', 'cake', 'rainbows'], ['*', '!cake']);
//=> ['unicorn', 'rainbows']
See the tests for more usage examples and expected matches.
API
multimatch(paths, patterns, [options]
Returns an array of matching paths.
paths
Type: string | string[]
Paths to match against.
patterns
Type: string | string[]
Globbing patterns to use. For example: ['*', '!cake']. See supported minimatch patterns.
options
Type: object
See the minimatch options.
How multiple patterns work
Positive patterns (e.g. foo or *) add to the results, while negative patterns (e.g. !foo) subtract from the results.
Therefore a lone negation (e.g. ['!foo']) will never match anything – use ['*', '!foo'] instead.
Globbing patterns
Just a quick overview.
- *matches any number of characters, but not- /
- ?matches a single character, but not- /
- **matches any number of characters, including- /, as long as it's the only thing in a path part
- {}allows for a comma-separated list of "or" expressions
- !at the beginning of a pattern will negate the match
Related
License
MIT © Sindre Sorhus
