[英]Replicating regular expression in PyMongo that runs in Mongo Shell
嘗試在根s3存儲桶中而不是在子文件夾中匹配文件
https://s3.amazonaws.com/assets.abc.net/ONE.jpg將是匹配項,而https://s3.amazonaws.com/assets.abc.net/SOMEFOLDER/one.jpg將不匹配
在MongoShell中,如果運行此查詢,我會得到結果
db.myCollection.find({
"attachments.url" : /https:\/\/s3.amazonaws.com\/assets.abc.net\/[^\/]+\.[A-z]+/
})
現在在pyMongo中,我正在嘗試復制同一件事,但得到零結果
這是我的代碼
regex = re.compile(r"https://s3.amazonaws.com/assets.abc.net/[^/]+\.[A-z]+", re.IGNORECASE)
# AlTERNATE ALSO TRIED
# regex = re.compile(r"https:\/\/s3.amazonaws.com\/assets.abc.net\/[^\/]+\.[A-z]+", re.IGNORECASE)
cursor = db.listings.find({ "attachments.url" : regex })
有人可以幫忙嗎? Python版本是2.7
這就是最終的工作
regex = re.compile(r"https:\/\/s3.amazonaws.com\/assets.abc.net\/[^\/]+\.[A-z]+", re.IGNORECASE)
cursor = db.listings.find({ "attachments.url" : { $regex : regex} })
regex = re.compile(re.escape(r"https://s3.amazonaws.com/assets.abc.net/[^/]+\.[A-z]+"), re.IGNORECASE)
cursor = db.listings.find({ "attachments.url" : regex })
嘗試通過re.escape()轉義模式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.