如何在MongoDB中查找并替换所有内容?

Hoa*_*Hoa 4 mongodb

例如,假设我按如下方式插入数据

doc1 = [{url: 'http://domain.com/pic1.jpg'}, {url: 'http://domain.com/pic2.jpg'}]
doc2 = [{url: 'http://domain.com/pic3.jpg'}, {url: 'http://domain.com/pic4.jpg'}]
db.picture.insert(doc1)
db.picture.insert(doc2)
Run Code Online (Sandbox Code Playgroud)

我怎么能用'https'替换所有'http'?

Ian*_*iel 5

MongoDB没有内置支持搜索和替换字符串的一部分.您可以使用自己喜欢的脚本语言编写程序来执行此操作.

您可以使用正则表达式搜索来获取以"http:"开头的所有URL:

db.picture.find({url: /^http:/})
Run Code Online (Sandbox Code Playgroud)

您可以在程序中执行此操作以获取数据,然后在程序中对其进行修改,并使用新值更新或替换文档.