簡體   English   中英

使用正則表達式從文檔中的給定字段中刪除子字符串,並在 mongo 中在其前面添加另一個子字符串

[英]Using regex to remove sub-string from a given field in a document and adding another sub-string in front of it in mongo

在下面給出的給定 mongo 文檔中,如果用戶想從“用戶名”字段中刪除“用戶”並希望將其替換為“管理員”,以便所有用戶值更改為 [“Admin1”、“Admin2”]

舊文件:

/* 1 */ { "_id": "Alice", "name": "Test1", "username": "user1", "role": "Admin", "password": "04f8996da763b7a969b102" }

/* 2 */ { "_id": "John", "name": "Test", "username": "user2", "role": "Admin", "password": "8c6976e5b5410415bde908bd" }

更新后的預期文件:

/* 1 */ { "_id": "Alice", "name": "Test1", "username": "Admin1", "role": "Admin", "password": "04f8996da763b7a969b102" }

/* 2 */ { "_id": "John", "name": "Test", "username": "Admin2", "role": "Admin", "password": "8c6976e5b5410415bde908bd" }

db.getCollection('users').find({"role": "Admin"}).forEach(function(doc) { doc["username"] = doc["username"].replace(/.*user/ , ''); db.getCollection('users').update({_id:doc._id}, {$set:{"username":"Admin" + doc["username"]}})
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM