Или вы просто используете одно регулярное выражение:
db.Profiles.find ( { "name" : /^(gary|rob)/i } )
Однако запрос регулярных выражений, который не начинается с фиксированной строки, не может использовать индекс (он не может использовать индекс и эффективно "запускать здесь до тех пор, пока совпадение не будет найдено, а затем залог" ) и, следовательно, является неоптимальным. Если это ваше требование, лучше сохранить нормализованное поле имени (например, name_lc - имя нижнего регистра) и запрос по этому поводу: