удалить "\ n" из полей значений приводит к Монго дБ - PullRequest
0 голосов
/ 20 сентября 2018

Как я могу удалить "\ n" из результатов поиска значений в mongo db, не удаляя его из значений mongo db?пожалуйста, мне нужна ваша помощь!

Ответы [ 2 ]

0 голосов
/ 20 сентября 2018

Вы можете попробовать ниже агрегации

db.collection.aggregate([
  { "$project": {
    "textstr": {
      "$reduce": {
        "input": { "$split": ["$textstr", "\n"] },
        "initialValue": "",
        "in": { "$concat": ["$$this", " ", "$$value"] }
      }
    }
  }}
])
0 голосов
/ 20 сентября 2018

Пример с 2 документами:

db.testcol.insert({
    textstr: "Hello World\nBye World\nHello World\n"
})
db.testcol.insert({
    textstr: "Testing\n123\nTesting\n"
})

db.testcol.find({}, {_id: 0, textstr: 1}).forEach(function(e, i) {
    e.textstr=e.textstr.replace(new RegExp('\n', 'g'), "");
    printjson(e);
});

Будет выводиться:

{
    "textstr" : "Hello WorldBye WorldHello World"
}
{
    "textstr" : "Testing123Testing"
}

Стоит отметить, что если вы хотите заменить / n другим символом, например пробелом, выэто можно сделать, изменив второй параметр замены на строку по вашему выбору.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...