using System.Text.RegularExpressions;
public static void Main()
var file = @"X:\ProjectZ\src\Application\Features\Countries\Commands\AddEdit\AddEditCountryCommand.cs";
var nameofPlural = "Countries";
var templatefolders = new string[]
"Features\\Commands\\AcceptChanges",
"Features\\Commands\\Create",
"Features\\Commands\\Delete",
"Features\\Commands\\Update",
"Features\\Commands\\AddEdit",
"Features\\Commands\\Import",
"Features\\EventHandlers",
"Features\\Queries\\Export",
"Features\\Queries\\GetAll",
"Features\\Queries\\GetById",
"Features\\Queries\\Pagination",
"Features\\Specifications",
"Persistence\\Configurations"
var extension = Path.GetExtension(file).ToLowerInvariant();
var name = Path.GetFileName(file);
var safeName = name.StartsWith(".") ? name : Path.GetFileNameWithoutExtension(file);
var relative = @"Features\Countries\Commands\AddEdit";
string templateFile = null;
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.bowerrc.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.cs-interface.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.html.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.json.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.md.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.vb-interface.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\.vb.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\bower.json.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\gruntfile.js.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\gulpfile.js.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\package.json.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Events\.createdevent.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Events\.deletedevent.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Events\.updatedevent.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Caching\.cachekey.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\AddEdit\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\AddEdit\.validator.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Create\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Create\.validator.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Delete\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Delete\.validator.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Import\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Import\.validator.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Update\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Commands\Update\.validator.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\DTOs\.dto.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\EventHandlers\.created.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\EventHandlers\.deleted.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\EventHandlers\.updated.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Queries\Export\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Queries\GetAll\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Queries\GetById\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Queries\Pagination\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Specifications\AdvancedFilter.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Specifications\AdvancedSpecification.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Features\Specifications\ByIdSpecification.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\.create.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\.edit.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\.view.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\Components\.advancedsearchcomponent.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Pages\Components\.formdialog.razor.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\PermissionSet\.cs.txt",
@"c:\users\don.nosam\appdata\local\microsoft\visualstudio\17.0_7ef0819aexp\extensions\neozhu\cleanarchitecture codegenerator for blazor app\0.2.8\Templates\Persistence\Configurations\.configuration.cs.txt",
foreach(var listItem in list)
Console.WriteLine("listItem: " + listItem);
Console.WriteLine("relative: " + relative);
var pattern = templatefolders.Where(x => relative.Replace(nameofPlural + "\\", "").IndexOf(x, StringComparison.OrdinalIgnoreCase) >= 0).First().Replace("\\", "\\\\");
Console.WriteLine(pattern);
var result = Regex.IsMatch(listItem, pattern, RegexOptions.IgnoreCase);
Console.WriteLine(result);