Problem polega na tym, że:
db.test.find({field: {$someOperator: {subfield: /regex/}}})
To właściwie inny sposób zadawania zapytań w MongoDB, który wykorzystuje równoważność obiektów do wyszukiwania poddokumentów.
Więc nie, musisz użyć notacji kropkowej, chyba że szukałeś miejsca, w którym jeden obiekt dokładnie równa się drugiemu.
Mając to na uwadze, możesz zawinąć dokument w $elemMatch
:http://docs.mongodb.org/manual/reference/operator/elemMatch /
to by zadziałało
Edytuj
Biorąc pod uwagę strukturę kolekcji $elemMatch
faktycznie nie zadziała.