reUncPath
Regular expression to parse a UNC path.
Usage
var reUncPath = require( '@stdlib/regexp/unc-path' );
reUncPath()
Returns a regular expression to parse a UNC path.
var RE_UNC_PATH = reUncPath();
var parts = RE_UNC_PATH.exec( '\\\\server\\share\\foo\\bar\\baz:a:b' );
/* returns
[
'\\\\server\\share\\foo\\bar\\baz:a:b',
'server', // host name
'share', // share name
'\\foo\\bar\\baz:a:b', // object name
'\\foo\\bar', // path name
'baz:a:b', // file name
'a', // stream name
'b', // stream type
'index': 0,
'input': '\\\\server\\share\\foo\\bar\\baz:a:b'
]
*/
parts = RE_UNC_PATH.exec( '\\\\server\\share' );
/* returns
[
'\\\\server\\share',
'server', // host name
'share', // share name
'', // object name
undefined, // path name
undefined, // file name
undefined, // stream name
undefined, // stream type
'index': 0,
'input': '\\\\server\\share'
]
*/
reUncPath.REGEXP
Regular expression to parse a UNC path.
var parts = reUncPath.REGEXP.exec( '\\\\server\\share\\foo\\bar\\baz' )[ 1 ];
// returns 'server'
Examples
var reUncPath = require( '@stdlib/regexp/unc-path' );
var RE_UNC_PATH = reUncPath();
var bool;
var path;
path = '\\\\server\\share\\foo\\bar\\baz:a:b';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share\\foo\\bar\\baz::b';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share\\foo\\bar\\baz:a';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share\\foo\\bar\\baz';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share\\foo\\bar';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share\\foo';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\share';
bool = RE_UNC_PATH.test( path );
// returns true
path = '\\\\server\\\\share';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\\\\\server\\share';
bool = RE_UNC_PATH.test( path );
// returns false
path = 'beep boop \\\\server\\share';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\';
bool = RE_UNC_PATH.test( path );
// returns false
path = '';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\foo\\bar\\baz:';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\foo\\bar\\baz:a:';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\foo\\bar\\baz::';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\foo\\bar\\baz:a:b:c';
bool = RE_UNC_PATH.test( path );
// returns false
path = '\\\\server\\share\\foo\\bar\\';
bool = RE_UNC_PATH.test( path );
// returns false
path = '//server/share';
bool = RE_UNC_PATH.test( path );
// returns false
path = '/foo/bar';
bool = RE_UNC_PATH.test( path );
// returns false
path = 'foo/bar';
bool = RE_UNC_PATH.test( path );
// returns false
path = './foo/bar';
bool = RE_UNC_PATH.test( path );
// returns false
path = '/foo/../bar';
bool = RE_UNC_PATH.test( path );
// returns false