我想進行詞邊界搜索。例如,假設您有以下條目:使用PyMongo的Word邊界RegEx搜索
- 「廚師」。 「廚師」
- 「廚師」
- 「廚師」。 「廚師」
- 「廚師」
- 「廚師」。
並進行搜索以查找包含「cook」作爲整體的條目。也就是說,只有第3,第4和第5個條目應該被返回。
在這種情況下,當我使用\b
字邊界語句時,由於自動轉義它會以某種方式變形。
import re, pymongo
# prepare pymongo
collection.find({"entry": re.compile('\bcook\b').pattern})
當我打印查詢字典裏,\b
變得\\b
。
我的問題是如何使用PyMongo進行文字邊界搜索?我能夠在MongoDB shell中執行此操作,但在PyMongo中失敗。
我認爲它需要'\\ \\ bcook B' –
是,'\ bcook \ B'變成'\\ \\ bcook B' – Muatik
試試['R'\ bcook \ b 「'](http://stackoverflow.com/questions/2241600/python-regex-r-prefix)。 – Sam