Рассматривали ли вы использование агрегации в MongoDB для внесения изменений перед экспортом?
Если вам нужно оставить исходные данные без изменений, создайте новую коллекцию с измененными данными:
db.inputCollection.aggregate([{$addFields:{Note:{$reduce:{input:{$split:["$Note","\n"]}, initialValue:"", in:{$concat:["$$value","$$this"]}}}}},{$out:"outputCollection"}])
Разбивая это:
$addFields
добавит новые поля в каждый документ, заменив все поля с тем же именем Установить Note
на результат $reduce
для ввода в уменьшение, создайте массив, разделив поле Note
на новой строке {$split:["$Note","\n"]}
поле in
при редуцировании определяет функцию {$concat:["$$value","$$this"]}
, которая объединяет текущее значение после предыдущего Эта стадия в конвейере примерно эквивалентна. split ("/ n"). join ("")
$out
записывает вывод в имя коллекции, готовый для экспорта
Если можно изменить исходную коллекцию вы можете обновить это поле:
db.inputCollection.find({Note:/\n/},{Note:1}).forEach(function(d){
db.inputCollection.update({_id:d._id},{$set:{Note:d.Note.replace(/\n/g, '')}})
})