path-starts-with

Returns true if a filepath starts with the given string. Works with windows and posix/unix paths.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
Install
Install with npm:
$ npm install --save path-starts-with
Usage
var startsWith = require('path-starts-with');
console.log(startsWith('foo/bar', 'foo')); //=> true
console.log(startsWith('foo/bar', 'bar')); //=> false
Negation
Prefix the substring with !
to return true when the path does not start with the substring.
console.log(startsWith('foo/bar', '!foo')); //=> false
console.log(startsWith('foo/bar', '!bar')); //=> true
options
options.nocase
Type: boolean
Default: false
Disable case sensitivity.
startsWith('foo/bar', 'FOO');
//=> false
startsWith('foo/bar', 'FOO', {nocase: true});
//=> true
options.partialMatch
Type: boolean
Default: false
Allow partial matches:
startsWith('foobar', 'foo'); //=> false
startsWith('foo.bar', 'foo'); //=> false
startsWith('foobar', 'foo', {partialMatch: true}); //=> true
startsWith('foo.bar', 'foo', {partialMatch: true}); //=> true
Comparison behavior
Windows paths
Backslashes are converted to forward slashes before the comparison is done. Thus, both of the following would be true
:
console.log(startsWith('foo\\bar', 'foo/bar')); //=> true
console.log(startsWith('foo/bar', 'foo\\bar')); //=> true
Leading dot-slash
Leading ./
is stripped from both the filepath and substring. Thus, both of the following would be true
:
console.log(startsWith('./foo/bar', 'foo')); //=> true
console.log(startsWith('foo/bar', './foo')); //=> true
Leading slashes
When the substring is prefixed with leading slashes, the number of leading slashes must match exactly.
console.log(startsWith('/foo', '/foo')); //=> true
console.log(startsWith('/foo/bar', '/foo')); //=> true
console.log(startsWith('/foo/bar', '//foo')); //=> false
console.log(startsWith('//foo/bar', '/foo')); //=> false
About
sh
$ npm install && npm test
sh
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Related projects
You might also be interested in these projects:
- contains-path: Return true if a file path contains the given path. | homepage
- normalize-path: Normalize slashes in a file path to be posix/unix-like forward slashes. Also condenses repeat slashes… more | homepage
- path-ends-with: Return
true
if a file path ends with the given string/suffix. | homepage
Author
Jon Schlinkert
License
Copyright © 2023, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.8.0, on July 29, 2023.