Я хотел бы получить все документы с идентификатором, соответствующим выражению регулярного выражения.
Например, у меня есть следующие идентификаторы документов:
p0
p0/e0
p1
p1/e0
Как я могу получить только p0 и p1? Регулярное выражение будет /^p[0-9]+$/
В настоящее время я могу сделать это, выполнив два запроса, но я хотел бы использовать только один:
This.db.allDocs({
include_docs: false
}).then(function(result){
// Find all ids matching /^p[0-9]+$/
var iDoc = result.rows.length;
while(iDoc--){
if(result.rows[iDoc].id.match(/^p[0-9]+$/)){
projectsIds.push(result.rows[iDoc].id);
}
}
// Get all documents with ids matching /^p[0-9]+$/
This.db.allDocs({
include_docs: true,
keys: projectsIds
}).then(function(result) {
var iProject = result.rows.length;
var docs = [];
while (iProject--) {
docs[iProject] = result.rows[iProject].doc;
}
projects.resolve(docs);
});
});