Necesita realizar una búsqueda con comodines (*,?, Etc.) en una cadena usando Regex

Necesito realizar comodines *, ?, etc.) buscar en una cadena. Esto es lo que he hecho:

string input = "Message";
string pattern = "d*";
Regex regex = new Regex(pattern, RegexOptions.IgnoreCase);

if (regex.IsMatch(input))
{
    MessageBox.Show("Found");
}
else
{
    MessageBox.Show("Not Found");
}

Con el código anterior, el bloque "Encontrado" está golpeando, ¡pero en realidad no debería!

Si mi patrón es "e *", solo debería aparecer "Encontrado".

Mi comprensión o requisito es d * search debería encontrar el texto que contiene "d" seguido de cualquier carácter.

¿Debo cambiar mi patrón como "d. *" Y "e. *"? ¿Existe algún soporte en .NET para Wild Card que lo haga internamente mientras usa la clase Regex?

Respuestas a la pregunta(10)

Su respuesta a la pregunta