Database

[{"chapterNumber":"1","contents":[{"paragraphNumber":"1 ","paragraphCleanText":"cleaned content 1","contents":["not clean content",{"p":null}]},{"paragraphNumber":"1 ","paragraphCleanText":"cleaned content 2","contents":["not clean content",{"p":null}]},]},{"chapterNumber":"2","contents":[{"paragraphNumber":"1 ","paragraphCleanText":"cleaned content 3","contents":["not clean content",{"p":null}]},{"paragraphNumber":"1 ","paragraphCleanText":"cleaned content 4","contents":["not clean content",{"p":null}]},{"paragraphNumber":"2 duplicate","paragraphCleanText":"cleaned content 3","contents":["not clean content 2",{"p":null}]}]}]

Query

db.collection.aggregate([{$match:{"contents.paragraphCleanText":"cleaned content 3"}},{$project:{_id:0,chapterNumber:1,contents:{$reduce:{input:"$contents",initialValue:[],in:{$cond:[{$eq:["$$this.paragraphCleanText","cleaned content 3"]},{$concatArrays:["$$value",[{paragraphCleanText:"$$this.paragraphCleanText",paragraphNumber:"$$this.paragraphNumber"}]]},"$$value"]}}}}}])

Result