A expressão regular
/[^Dd]an/
Na verdade, não corresponde a Steve
. Basicamente, você está combinando todas as linhas com a sequência an
, exceto aquelas que precedem com D
ou d
. Eu não vejo como você espera que combine com Steve.
Eu acho que o comportamento está correto. Lembre-se de que a negação só se aplica aos caracteres na seção []
.