带双引号的pymongo文本搜索问题

2024-05-19 10:09:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用pymongo在python文件中执行文本搜索,代码如下:

mensajes = db.m
mensajes.find({"$text":{"$search": query}},{'message':1}))
query= "origami \"Pasó algo.\"-pingüino"

回报率为[]。但是,如果我在MongoShell中使用相同的查询,它将非常有效。如果我使用:

query= 'origami \'Pasó algo.\'-pingüino'

与使用双引号的相同查询不同,我从python文件中获得了结果,但它们是不正确的。我不明白如果查询是相同的,为什么结果会不同,我只是使用简单的引号。(我要做的文本搜索是查找包含Pasóalgo的消息,不包含pingüino,它可以包含或不包含折纸)


Tags: 文件代码text文本dbsearchfindquery
1条回答
网友
1楼 · 发布于 2024-05-19 10:09:01

首先确保已将text-index应用于该键

pymongo在文本搜索中使用Escape-Sequences时会感到困惑

我建议您尝试Triple-Quotes字符串声明或严格的字符串声明

严格字符串声明:

query= r"origami 'Pasó algo.'-pingüino"

三重引号声明

query= """origami 'Pasó algo.'-pingüino"""

相关问题 更多 >

    热门问题