国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Golang > 正文

Golang Mongodb模糊查詢的使用示例

2020-04-01 18:49:39
字體:
來源:轉載
供稿:網友

前言

在日常使用的Mongodb中,有一項功能叫做模糊查詢(使用正則匹配),例如:

db.article.find({"title": {$regex: /a/, $options: "im"}})

這是我們常用Mongodb的命令行使用的方式,但是在mgo中做出類似的方式視乎是行不通的:

query := bson.M{"title": bson.M{"$regex": "/a/", "$options": "im"}}

大家用這個方式去查詢,能查詢到算我輸!

下面總結一下,正真使用的方式:

在Mongodb的命令行中,我們可以使用形如 /abcd/ 的方式來作為我們的pattern,但是在mgo是直接傳入字符串來進行的,也就是傳入的是"/a",而不是/a/。

根據第一點,我們將代碼修改一下。

query := bson.M{"title": bson.M{"$regex": "a", "$options": "im"}}

但是我們會發現依然不能得到我們想要的結果,那么第二點就會產生了!

在mgo中要用到模糊查詢需要mgo中自帶的一個結構: bson.RegEx

// RegEx represents a regular expression. The Options field may contain// individual characters defining the way in which the pattern should be// applied, and must be sorted. Valid options as of this writing are 'i' for// case insensitive matching, 'm' for multi-line matching, 'x' for verbose// mode, 'l' to make /w, /W, and similar be locale-dependent, 's' for dot-all// mode (a '.' matches everything), and 'u' to make /w, /W, and similar match// unicode. The value of the Options parameter is not verified before being// marshaled into the BSON format.type RegEx struct {Pattern stringOptions string}

那么最終我們的代碼為:

query := bson.M{"title": bson.M{"$regex": bson. RegEx:{Pattern:"/a/", Options: "im"}}}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霞浦县| 谷城县| 富阳市| 启东市| 乳山市| 尉犁县| 霸州市| 于都县| 天全县| 锦屏县| 三台县| 台山市| 洪江市| 湘潭县| 新乐市| 台山市| 子洲县| 陆丰市| 晋城| 信阳市| 方正县| 红河县| 宜川县| 陈巴尔虎旗| 嫩江县| 和林格尔县| 孝感市| 东山县| 颍上县| 玉田县| 稻城县| 三台县| 闽侯县| 昌邑市| 大石桥市| 五华县| 武夷山市| 上饶县| 共和县| 和硕县| 聂拉木县|