Я пытаюсь вставить некоторые данные из собственной базы данных JSON в MongoDB для тестирования. Мои данные в настоящее время находятся в файле JSON в формате:
{ "_id": "213124123114",
"foo":bar",
"otherId": "2324242424",
...
}
Чтобы сохранить мои отношения тестовых данных нетронутыми, я хочу использовать sed для переноса всех значений _id и xxxId с помощью ObjectId (...)
Мои данные будут выглядеть так:
{ "_id": ObjectId("213124123114"),
"foo":bar",
"otherId": ObjectId("2324242424"),
...
}
Затем я бы взял данные и вставил их в монго в том же формате, что и в файле.
Я проверяю свое регулярное выражение в javascript, но следующее задание взрывается:
var y = s/"_id":(\s?"[0-9]+"),/ObjectId($1)/gi
SyntaxError: Неожиданный токен:
Выход из ':', похоже, ничего не делает.
Когда я убираю флаг захвата в начале, присваивание регулярному выражению работает как ожидалось
var y = /"_id":(\s?"[0-9]+"),/
var p = "\"_id\": \"123123123121321212312\",";
y.test(p) === true
но у меня нет способа захватить блок значений, который мне нужно обернуть.
Есть идеи, что я делаю не так?