Regex are expensive are process.
Another way is to create an index of text and then search it using $search
.
Create a text Index of fields you want to make searchable:
db.collection.createIndex({name: 'text', otherField: 'text'});
Search for a string in text index:
db.collection.find({
'$text'=>{'$search': "The string"}
})