I have a find statement like this
collSession.find({\"Venue.type\": /.*MT.*/}).toArray(function (err, _clsSession)
{
console.log(_clsSess
Finally i got from here
it is "Venue.type": new RegExp(queryParams.et)
Instead of using the inline syntax to create a regular expression, you can also use the RegExp object to create one based on a string
var searchPhrase = "MT";
var regularExpression = new RegExp(".*" + searchPhrase + ".*");
collSession.find({"Venue.type": regularExpression}) [...]
Replace /.*MT.*/
with new RegExp( ".*" + variable + ".*" )
Try this:
var pattern = 'concatenate string' + here,
regexp = new Regexp(pattern);
Take a look at this code: (I'm using mongoose)
exports.getSearchPosts = (req, res, next) => {
const keyword = req.body.keyword;
Post.find({ postTitle: new RegExp( ".*" + keyword + ".*" ) }).then(posts => {
res.render('post/search', {
pageTitle: 'Search result for: ' + keyword,
posts: posts,
category: postCategory,
posts: catPost,
});
}).catch(err => console.log(err));
}
I think you will find it helpful