mongose 模糊檢索實(shí)現(xiàn)方法示例詳解
條件查找
$regex為模糊查詢的字符串提供正則表達(dá)式功能,MongoDB使用Perl兼容正則表達(dá)式
//通過條件查找,支持username模糊搜索并分頁
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 對象
RegExp 對象用于存儲檢索模式。通過 new 關(guān)鍵詞來定義 RegExp 對象
RegExp 對象有 3 個方法:test()、exec() 以及 compile()
- test() 方法檢索字符串中的指定值。返回值是 true 或 false;
- exec() 方法檢索字符串中的指定值。返回值是被找到的值。如果沒有發(fā)現(xiàn)匹配,則返回 null
var patt1=new RegExp("e");
document.write(patt1.exec("The best things in life are free"));- compile() 方法用于改變 RegExp。compile() 既可以改變檢索模式,也可以添加或刪除第二個參數(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 模糊檢索的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Mongodb3.0.5 副本集搭建及spring和java連接副本集配置詳細(xì)介紹
這篇文章主要介紹了Mongodb3.0.5 副本集搭建及spring和java連接副本集配置詳細(xì)介紹的相關(guān)資料,這里對安裝步驟進(jìn)行了詳解,需要的朋友可以參考下2016-12-12
MongoDB學(xué)習(xí)以及集群搭建的實(shí)踐全紀(jì)錄
這篇文章主要給大家介紹了關(guān)于MongoDB學(xué)習(xí)以及集群搭建的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-09-09
MongoDB使用mongoexport和mongoimport命令,批量導(dǎo)出和導(dǎo)入JSON數(shù)據(jù)到同一張表的實(shí)例
今天小編就為大家分享一篇關(guān)于MongoDB使用mongoexport和mongoimport命令,批量導(dǎo)出和導(dǎo)入JSON數(shù)據(jù)到同一張表的實(shí)例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-10-10
mongodb 實(shí)現(xiàn)遠(yuǎn)程連接
這篇文章主要介紹了mongodb 實(shí)現(xiàn)遠(yuǎn)程連接,需要的朋友可以參考下2014-07-07
Centos系統(tǒng)搭建MongoDB數(shù)據(jù)庫
這篇文章介紹了Centos系統(tǒng)搭建MongoDB數(shù)據(jù)庫的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04
MongoDB安裝及接入springboot的詳細(xì)過程
MongoDB是一個開源、高性能、無模式(模式自由)的文檔(Bson)型數(shù)據(jù)庫,這篇文章主要介紹了MongoDB安裝及接入springboot,需要的朋友可以參考下2024-05-05

