Angularjs 允许使用编码的url查询参数在mongodb中进行正则表达式搜索

Angularjs 允许使用编码的url查询参数在mongodb中进行正则表达式搜索,angularjs,regex,node.js,mongodb,search,Angularjs,Regex,Node.js,Mongodb,Search,我有一个由angular fullstack yeoman生成器生成的angular fullstack应用程序,我正在发送带有url作为查询参数的搜索文本 这就是为什么它被编码成这样- http://localhost:9000/api/query?limit=5&searchText=sample+question+title+%5B [已编码为%5B 现在,在我的服务器端控制器中,我正在执行- var escapeRegExpChars = function (text) {

我有一个由angular fullstack yeoman生成器生成的angular fullstack应用程序,我正在发送带有url作为查询参数的搜索文本 这就是为什么它被编码成这样-

http://localhost:9000/api/query?limit=5&searchText=sample+question+title+%5B
[
已编码为
%5B

现在,在我的服务器端控制器中,我正在执行-

var escapeRegExpChars = function (text) {
        return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
    };
if(req.query.searchText != undefined && req.query.searchText != '')
        queryObj['title']= new RegExp(escapeRegExpChars(req.query.searchText), 'i');

var query = Query.find(queryObj).exec(function(err,queries){});

那么,如何在客户端启用正则表达式搜索?

您不需要任何东西。如果您
console.log(req.query.searchText)
您将看到它是url解码的,并显示“示例问题标题[”但是,如果我在客户端输入文本框中输入正则表达式,以及在客户端输入
/sample/I
并执行
console.log(queryObj)
I get
{title://\/sample\/I\q/I}
是否正确?