Directory.GetFiles
does not support regular expressions. It does, however, support a handful of special 'wildcard' characters. From MSDN:
*
Zero or more characters.
?
Exactly zero or one character.
Try this instead:
string searchPattern = '*' + searchBox.Text + '*'; // searchPattern = *duck*
string path = @"D:\test";
string[] searchResults = Directory.GetFiles(path, searchPattern, System.IO.SearchOption.AllDirectories);