$ gnpm install globrex
npm install globrex --save
ExtGlob
featuresRegExp
segmentsconst globrex = require('globrex');
const result = globrex('p*uck')
// => { regex: /^p.*uck$/, string: '^p.*uck$', segments: [ /^p.*uck$/ ] }
result.regex.test('pluck'); // true
Type: function
Returns: Object
Transform globs intp regular expressions. Returns object with the following properties:
Type: RegExp
JavaScript RegExp
instance.
Note: Read more about how to use RegExp on MDN.
This property only exists if the option filepath
is true.
Note:
filepath
isfalse
by default
Type: Array
Array of RegExp
instances seperated by /
.
This can be usable when working with file paths or urls.
Example array could be:
[ /^foo$/, /^bar$/, /^([^\/]*)$/, '^baz\\.(md|js|txt)$' ]
Type: RegExp
JavaScript RegExp
instance build for testign against paths.
The regex have different path seperators depending on host OS.
Type: String
Glob string to transform.
Type: Boolean
Default: false
Enable all advanced features from extglob
.
Matching so called "extended" globs pattern like single character matching, matching ranges of characters, group matching, etc.
Note: Interprets
[a-d]
as[abcd]
. To match a literal-
, include it as first or last character.
Type: Boolean
Default: false
When globstar is false
globs like '/foo/*'
are transformed to the following
'^\/foo\/.*$'
which will match any string beginning with '/foo/'
.
When the globstar option is true
, the same '/foo/*'
glob is transformed to
'^\/foo\/[^/]*$'
which will match any string beginning with '/foo/'
that does not have a '/'
to the right of it. '/foo/*'
will match: '/foo/bar'
, '/foo/bar.txt'
but not '/foo/bar/baz'
or '/foo/bar/baz.txt'
.
Note: When globstar is
true
,'/foo/**'
is equivelant to'/foo/*'
when globstar isfalse
.
Type: Boolean
Default: false
Be forgiving about mutiple slashes, like ///
and make everything after the first /
optional. This is how bash glob works.
Type: String
Default: ''
RegExp flags (e.g. 'i'
) to pass to the RegExp constructor.
Type: Boolean
Default: false
Parse input strings as it was a file path for special path related features. This feature only makes sense if the input is a POSIX path like /foo/bar/hello.js
or URLs.
When true
the returned object will have an additional path
object.
segment
: Array containing a RegExp
object for each path segment.regex
: OS specific file path RegExp
. Path seperator used is based on the operating system.globstar
: Regex string used to test for globstars.Note: Please only use forward-slashes in file path glob expressions Though windows uses either
/
or\
as its path separator, only/
characters are used by this glob implementation. You must use forward-slashes only in glob expressions. Back-slashes will always be interpreted as escape characters, not path separators.
Learn more about advanced globbing here
MIT © Terkel Gjervig
Copyright 2013 - present © cnpmjs.org | Home |