Alex,
Did you ever figure this out?
Mongo does an exact match by default, and so you need to use Regex to simulate a LIKE query. In cfmongodb, we do it like this:
pattern = createObject('java', 'java.util.regex.Pattern');
var regex = '.*' & val & '.*';
pattern.compile(regex, ignoreCase ? pattern.CASE_INSENSITIVE : 0)
In context, that's at/near:
So if you were doing a case-insensitive $OR, your case might look something like:
pattern = createObject('java', 'java.util.regex.Pattern');
var search = pattern.compile('.*' & rc.searchArgs.searchText & '.*');
searchArgs['$or'] = [ {'firstname': search},
{'lastname': search},
{'surveyForm.title': search} ]
Best,
Marc