Acklann.GlobN
2.1.7
dotnet add package Acklann.GlobN --version 2.1.7
NuGet\Install-Package Acklann.GlobN -Version 2.1.7
<PackageReference Include="Acklann.GlobN" Version="2.1.7" />
<PackageVersion Include="Acklann.GlobN" Version="2.1.7" />
<PackageReference Include="Acklann.GlobN" />
paket add Acklann.GlobN --version 2.1.7
#r "nuget: Acklann.GlobN, 2.1.7"
#:package Acklann.GlobN@2.1.7
#addin nuget:?package=Acklann.GlobN&version=2.1.7
#tool nuget:?package=Acklann.GlobN&version=2.1.7
What is GlobN
GlobN is a file pattern matching library for that outperforms Regex (see benchmarks). Grabbing files from the command-line can never be easier.
How it works
Let say your current directory is as follows.
C:\projects\coolapp
index.html
js/
-- site.ts
-- site.js
-- viewModel/
-- view.ts
-- view.js
Most of the functions you'll be utilizing are extension methods. So lets say you want to grab all the files within the current directory.
string cd = System.Environment.CurrentDirectory;
IEnumerable<string> all5Files = cd.GetFiles();
Lets say your in the css folder and you want to grab all of the .js files.
var siteJs = cd.GetFiles("../js/*.js");
/* return: js\site.js */
var allJsFiles cd.GetFiles(@"..\**\*.js");
/* return: js\site.js; js\viewModel\view.js */
Finally, here are some other straight forward examples.
var filteredList = listOfPaths.Filter("*.js");
IEnumerable<string> files = @"..\js\*.ts".ResolvePath();
Glob glob = "*.png";
glob.IsMatch("/site/content/bg.png");
Supported Expressions
| Pattern | Description |
|---|---|
| ..\ | Moves the current directory up one folder. Only applicable at the beginning of the pattern. |
| * | Match zero or more characters excluding the directory separator. |
| ** | Match zero or more directories. |
| ? | Match a single character. |
| ! | Negates the matching pattern. Only applicable at the beginning of the pattern. |
NOTE: matches a case-insensitive.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Acklann.GlobN:
| Package | Downloads |
|---|---|
|
Daterpillar
A library for generating SQL migration scripts. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.1.7 | 23,509 | 9/9/2018 |
| 2.1.7-rc | 1,085 | 7/2/2018 |
| 2.1.5-rc | 1,074 | 7/1/2018 |
| 2.1.2-rc | 1,334 | 7/1/2018 |
| 2.1.1-rc | 1,083 | 6/29/2018 |
| 2.1.0-rc | 1,073 | 6/28/2018 |
| 1.2.1 | 1,695 | 4/15/2018 |
| 1.1.0 | 1,532 | 3/9/2018 |
| 1.0.7 | 1,577 | 1/26/2018 |
| 1.0.6 | 1,317 | 1/10/2018 |
| 1.0.4 | 1,588 | 1/10/2018 |
| 1.0.1 | 1,578 | 1/8/2018 |
version 2.1.2
-------------
Fixes:
* ResolvePath not returning absolute paths.
version 2.1.0
-------------
Changes:
* Remove 'throwIfInvalid' from Glob constructor.
* Glob Extension methods 'expandVariable' no longer defaults to true.
* The 'SearchOption' enum has been added to the ResolvePath overloads.
Enhancements:
* IsMatch performance has been significantly improved.
version 1.0.7
-------------
Enhancements:
* Make matches case-insensitive.
version 1.0.0
-------------
Features:
* Suuports the following wildcards ('*', '**', '?').
* Supports the path expansion for both environment variables and parent directories ('..\').
* Supports pattern negating matches ('!').
* Supports filtering list of paths.