I stedet for dette:
db.database.find({A: {$regex: '/^*(abc def)*$/''}})
Du skal gøre dette:
db.database.find({A: /abc def/i })
^* er faktisk ikke gyldig syntaks, da ^ og $ er ankre og ikke noget, der kan gentages. Du mente nok ^.* her. Men der er ikke behov for ^.*, da det simpelthen betyder "Alt op til det følgende tegn" og (abc def)* betyder "0 eller flere gange "abc def", men det skal være i slutningen af strengen, på grund af din $. "I" i slutningen er for at gøre det ufølsomt for store og små bogstaver.