@stdlib/regexp-dirname

Return a regular expression to capture a path dirname.

Usage no npm install needed!

<script type="module">
  import stdlibRegexpDirname from 'https://cdn.skypack.dev/@stdlib/regexp-dirname';
</script>

README

Dirname

NPM version Build Status Coverage Status

Regular expression to capture a path dirname.

Installation

npm install @stdlib/regexp-dirname

Usage

var reDirname = require( '@stdlib/regexp-dirname' );

reDirname( [platform] )

Returns a regular expression to capture a path dirname.

var RE = reDirname();
// returns <RegExp>

RE = reDirname( 'posix' );
// returns <RegExp>

var dir = RE.exec( '/foo/bar/index.js' )[ 1 ];
// returns '/foo/bar'

RE = reDirname( 'win32' );
// returns <RegExp>

dir = RE.exec( 'C:\\foo\\bar\\index.js' )[ 1 ];
// returns 'C:\\foo\\bar'

reBasename.REGEXP

Regular expression to capture a path dirname.

var bool = ( reDirname.REGEXP.toString() === reDirname().toString() );
// returns true

reDirname.REGEXP_POSIX

Regular expression to capture a POSIX path dirname.

var dir = reDirname.REGEXP_POSIX.exec( '/foo/bar/index.js' )[ 1 ];
// returns '/foo/bar'

reDirname.REGEXP_WIN32

Regular expression to capture a Windows path dirname.

var dir = reDirname.REGEXP_WIN32.exec( 'C:\\foo\\bar\\index.js' )[ 1 ];
// returns 'C:\\foo\\bar'

Notes

  • The as REGEXP exported regular expression is platform-dependent. If the current process is running on Windows, REGEXP === REGEXP_WIN32; otherwise, REGEXP === REGEXP_POSIX.

Examples

var reDirname = require( '@stdlib/regexp-dirname' );
var RE_DIRNAME = reDirname();
var dir;

// Assuming a POSIX platform...
dir = RE_DIRNAME.exec( '/foo/bar/index.js' )[ 1 ];
// returns '/foo/bar'

dir = reDirname.REGEXP_POSIX.exec( '/foo/bar/home.html' )[ 1 ];
// returns '/foo/bar'

dir = reDirname.REGEXP_WIN32.exec( 'C:\\foo\\bar\\home.html' )[ 1 ];
// returns 'C:\\foo\\bar'

Notice

This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.

For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.

Community

Chat


License

See LICENSE.

Copyright

Copyright © 2016-2022. The Stdlib Authors.