Um eine Zeichenfolge mit * (0 oder mehr Treffer eines beliebigen Zeichens) sowie ? (ein beliebiges Zeichen) in einem Regulären Ausdruck zu verwenden, kann folgende Funktion nützlich sein:
public static string ConvertWildcardToRegex(string pattern)
{
// http://stackoverflow.com/a/6907849/107625
// http://www.codeproject.com/Articles/11556/Converting-Wildcards-to-Regexes
return "^" + Regex.Escape(pattern).
Replace("\\*", ".*").
Replace("\\?", ".") + "$";
}