中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MongoDB中怎么使用正則表達式

發布時間:2021-07-16 16:54:08 來源:億速云 閱讀:130 作者:Leah 欄目:關系型數據庫

MongoDB中怎么使用正則表達式,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

如果要想實現模糊查詢,那么必須使用正則表達式,使用的是與Perl兼容的正則表達式的形式。
如果要想實現正則表達式,則按照如下的定義格式:
  ● 基礎語法:{key:正則表達式};
  ● 完整語法:{key:{"$regex":正則標記,"$options":選項}}。
對于options主要是設置正則的信息查詢的標記:
  ● “i”:忽略字母大小寫,最常用;
  ● “m”:多行查找;
  ● “x”:空白字符串除了被轉義的或在字符類中以外的完全被忽略;
  ● “s”:匹配所有的字符(“.”),包含換行內容。
需要注意的是,如果是直接使用,那么只能夠使用i和m,而“x”和“s”必須使用"$regex”

范例:查詢以“王”開頭的人員信息
> db.emp.find({"name":/王/}).pretty();
{
        "_id" : ObjectId("599108433268c8e84253be2d"),
        "name" : "王八",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京"
}

范例:查詢姓名有字母a的人員信息
> db.emp.find({"name":/a/i}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數學",
                "英語",
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599148bd0184ff511bf02b91"),
        "name" : "林A",
        "sex" : "男",
        "age" : 22,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數學",
                "英語",
                "音樂",
                "政治"
        ],
        "parents" : [
                {
                        "name" : "林A父親",
                        "age" : 50,
                        "job" : "農民"
                },
                {
                        "name" : "林A母親",
                        "age" : 49,
                        "job" : "工人"
                }
        ]
}

如果要執行模糊查詢的操作,嚴格來講只需要編寫一個關鍵字就夠了。

> db.emp.find({"name":{"$regex":/a/i}}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數學",
                "英語",
                "音樂",
                "政治"
        ]
}
{
        "_id" : ObjectId("599148bd0184ff511bf02b91"),
        "name" : "林A",
        "sex" : "男",
        "age" : 22,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數學",
                "英語",
                "音樂",
                "政治"
        ],
        "parents" : [
                {
                        "name" : "林A父親",
                        "age" : 50,
                        "job" : "農民"
                },
                {
                        "name" : "林A母親",
                        "age" : 49,
                        "job" : "工人"
                }
        ]
}

正則操作之中除了可以查詢出單個字段的內容之外,也可以進行數組數據的查詢。

范例:查詢數組數據
> db.emp.find({"course":/語/i}).pretty();
{
        "_id" : ObjectId("599129a00184ff511bf02b87"),
        "name" : "劉A",
        "sex" : "男",
        "age" : 35,
        "sal" : 8000,
        "loc" : "北京",
        "course" : [
                "語文",
                "數學",
                "英語",
                "音樂",
                "政治"
        ]
}

MongoDB中的正則符號和之前Java正則是由一些小小差別,不建議使用以前的一些標記,正則就將其應用在模糊數據的查詢上。

看完上述內容,你們掌握MongoDB中怎么使用正則表達式的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

霍林郭勒市| 章丘市| 宝丰县| 龙泉市| 讷河市| 漯河市| 大冶市| 乌恰县| 石阡县| 汝州市| 张家港市| 大宁县| 安多县| 曲松县| 邳州市| 寻甸| 凤凰县| 日喀则市| 樟树市| 武汉市| 横山县| 杭锦旗| 孟州市| 刚察县| 明星| 鸡西市| 河津市| 清丰县| 桐城市| 南丰县| 鄂托克前旗| 鄱阳县| 七台河市| 怀宁县| 阳曲县| 丰宁| 商洛市| 惠安县| 霍山县| 双鸭山市| 盐亭县|