Mongodb 删除“\";来自mongo db中的值字段结果

Mongodb 删除“\";来自mongo db中的值字段结果,mongodb,mongoose,mongodb-query,aggregation-framework,Mongodb,Mongoose,Mongodb Query,Aggregation Framework,如何从mongo db中搜索值的结果中删除“\n”,而不从mongo db的值中删除它? 求你了,我需要你的帮助 包含两个文档的示例: 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}).f

如何从mongo db中搜索值的结果中删除“\n”,而不从mongo db的值中删除它?
求你了,我需要你的帮助

包含两个文档的示例:

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,可以通过将replace的第二个参数更改为您选择的字符串来完成此操作。

您可以在下面尝试

db.collection.aggregate([
  { "$project": {
    "textstr": {
      "$reduce": {
        "input": { "$split": ["$textstr", "\n"] },
        "initialValue": "",
        "in": { "$concat": ["$$this", " ", "$$value"] }
      }
    }
  }}
])

$trim谢谢sam的帮助,但此函数从一开始就删除“\n”,我的值在中间包含“\n:”(:(请您提供更多帮助!!得到结果后,您可以使用正则表达式对其进行操作以删除“\n”谢谢您的帮助谢谢Anthony,但当我尝试此函数时,会收到一条消息,提示“reduce”是无效操作员:(!!有什么建议吗?你的mongodb版本是什么?我怎么知道我使用的版本是Robomongo 1.0 R-C1!!我检查了mongo--版本,但没有结果!!运行
db.version()
非常感谢Anthony先生,我会尝试的。