MongoDB - 查找包含空格的值

1 mongodb mongodb-query

我有以下样本文档:

[
    { _id: "1", value: " 1" },
    { _id: "2", value: "2" },
    { _id: "3", value: "3 " }
]
Run Code Online (Sandbox Code Playgroud)

如何运行 MongoDBfind函数来返回值包含空格的文档?因此,在这种情况下,它将返回 1,因为它的开头有一个空格,而返回 3,因为它的末尾有一个空格。

Yon*_*hun 5

$regex将运算符与正则表达式模式一起使用:

(^\s.+)|(.+\s$)
Run Code Online (Sandbox Code Playgroud)

(^\s.*)()-以( ) 开头的组( ^) 空格 ( ) 匹配至少出现一次的\s任何字符 ( )。.

|- 或者。

(.*\s$)- 组 ( ) 与末尾 ( ) 处至少出现一次 ( ) 的()任何字符 ( ) 相匹配。.+$

示例正则表达式 101 和测试数据


db.collection.find({
  value: {
    $regex: "(^\\s.+)|(.+\\s$)"
  }
})
Run Code Online (Sandbox Code Playgroud)

示例 Mongo 游乐场