private static Regex WildcardToRegex(string wildcard, string noEscapePrefix = "^") { return new Regex(noEscapePrefix + EscapeFilepathCharacters.Replace(wildcard, "\\$1") .Replace("?", @".") .Replace("**", @"?") .Replace("*", @"[^\\\/\<\>\|]*") .Replace("?", @".*") + '$', RegexOptions.IgnoreCase); }