欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mongose 模糊檢索實(shí)現(xiàn)方法示例詳解

 更新時(shí)間:2023年08月18日 10:02:32   作者:freeman_Tian  
這篇文章主要為大家介紹了mongose 模糊檢索實(shí)現(xiàn)方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

條件查找

$regex為模糊查詢的字符串提供正則表達(dá)式功能,MongoDB使用Perl兼容正則表達(dá)式

//通過(guò)條件查找,支持username模糊搜索并分頁(yè)
    findAdminByParamsAndPageHasFuzzy(params, pager) {
        if (params.username) {
            let pattern = new RegExp(params.username);
            params.username = {
                $regex: pattern,
                $options: 'imxs'
            };
        }
        if (params.orgname) {
            let pattern = new RegExp(params.orgname);
            params.orgname = {
                $regex: pattern,
                $options: 'imxs'
            };
        }
        if (params.adminRoles) {
            params.adminRoles = mongoose.Types.ObjectId(params.adminRoles);
        }
        AdminHandler.searchParamsClearEmptyValue(params);
        return Promise.all([
            adminModel.find(params, { password: 0 }).count().exec(),
            adminModel.find(params, { password: 0 }).sort({
                _id: -1
            }).populate("adminRoles").skip((pager.pageIndex - 1) * pager.pageSize).limit(pager.pageSize).exec()
        ])
    }

RegExp 對(duì)象

RegExp 對(duì)象用于存儲(chǔ)檢索模式。通過(guò) new 關(guān)鍵詞來(lái)定義 RegExp 對(duì)象

RegExp 對(duì)象有 3 個(gè)方法:test()、exec() 以及 compile()

  • test() 方法檢索字符串中的指定值。返回值是 true 或 false;
  • exec() 方法檢索字符串中的指定值。返回值是被找到的值。如果沒(méi)有發(fā)現(xiàn)匹配,則返回 null
var patt1=new RegExp("e");
document.write(patt1.exec("The best things in life are free"));
  • compile() 方法用于改變 RegExp。compile() 既可以改變檢索模式,也可以添加或刪除第二個(gè)參數(shù);
var patt1=new RegExp("e");
document.write(patt1.test("The best things in life are free"));
patt1.compile("d");
document.write(patt1.test("The best things in life are free"));

以上就是mongose 模糊檢索實(shí)現(xiàn)示例詳解的詳細(xì)內(nèi)容,更多關(guān)于mongose 模糊檢索的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論