0.1.1 • Published 7 months ago
@isdk/glob v0.1.1
@isdk/glob
@isdk/glob is a library that provides a simple and efficient way to match string against glob patterns. It supports both whitelist and blacklist patterns, with blacklist patterns taking precedence.
Installation
You can install @isdk/glob:
npm install @isdk/globUsage
Basic Usage
The globMatch function checks if a given string matches the specified pattern(s).
import { globMatch } from '@isdk/glob';
// Single pattern
console.log(globMatch('example.txt', '*.txt')); // true
console.log(globMatch('example.txt', '*.md')); // false
// Array of patterns
console.log(globMatch('example.txt', ['*.txt', '*.md'])); // true
console.log(globMatch('example.txt', ['*.md', '*.js'])); // falseAdvanced Usage
You can use both whitelist and blacklist patterns. Blacklist patterns take precedence over whitelist patterns.
import { globMatch } from 'glob-match';
// Blacklist pattern
console.log(globMatch('example.txt', ['!example.txt'])); // false
// Mixed patterns
console.log(globMatch('example.txt', ['*.txt', '!example.txt'])); // false
console.log(globMatch('example.txt', ['*.txt', '!example.md'])); // trueAPI Documentation
globMatch(value: string, pattern: string | string[]): boolean
Checks if a given string matches the specified pattern(s).
- Parameters:
value(string): The string to be matched.pattern(string | string[]): A single pattern string or an array of pattern strings.
- Returns:
boolean: Returnstrueif the string matches any of the whitelist patterns and does not match any blacklist patterns, otherwise returnsfalseorundefined.
Example
import { globMatch } from 'glob-match';
console.log(globMatch('example.txt', '*.txt')); // true
console.log(globMatch('example.txt', ['*.md', '!example.txt'])); // falseContributing
We welcome contributions from the community! Here are some ways you can help:
- Bug Reports: If you find a bug, please open an issue on the GitHub Issues page.
- Feature Requests: If you have an idea for a new feature, feel free to open an issue to discuss it.
- Pull Requests: If you want to contribute code, please fork the repository and submit a pull request with your changes.
License
This project is licensed under the MIT License. See the LICENSE file for details.