Non è necessario utilizzare regex qui, qualcosa di più semplice come questo dovrebbe funzionare:
db.posts.find({"headers.Date": new Date(2001, 06, 06) })
Questo dovrebbe funzionare se le date che hai salvato nel DB sono senza tempo (solo giorno, mese, anno)
Ora, se hai le date salvate con new Date(), che include anche i componenti temporali, devi creare un intervallo di date che includa tutti i momenti di quel giorno:
db.posts.find( //query for all moments/time of a specific date
{"headers.Date": {"$gte": new Date(2001, 6, 6), "$lt": new Date(2001, 6, 7)}})
Nota:l'API per la data è la data (AAAA, MM, GG) e il conteggio per 'mese' inizia da '0' e il conteggio per "data" inizia da "1".