0

mongodb fts で問題が発生しました。Haskell 型のパーツを検索したい。たとえば、次のようなフィールドタイプを取得しました。

type : "[a] -> [b] -> [(a,b)]"

"[a]""[b]"、および"[(a,b)]"を検索すると、上記のフィールドを含む適切なドキュメントが取得されます。しかし、 "[a] -> [b]"を検索しようとすると、何も得られません。

> db.mycollection.runCommand("text",{search : "\"[a] -> [b]\""})
{
"queryDebugString" : "a||||||[a] -> [b]",
"language" : "none",
"results" : [ ],
"stats" : {
    "nscanned" : 1,
    "nscannedObjects" : 0,
    "n" : 0,
    "nfound" : 0,
    "timeMicros" : 185
},
"ok" : 1
}

最初に、クエリで特殊文字をエスケープする必要があると考えましたが、違いはなく、queryDebugStringは常に同じに見えます。

矢印を使用せず、エントリが次のようになっている場合、

type : [a] > [b] > [(a,b)]

すべて順調。"[a] ""[b]""[(a,b)]"および"[a] > [b]"を検索すると、常に適切なドキュメントを取得できます。

では、私が必要としている検索の何が問題なのですか? それはバグですか、それとも私が理解できない概念ですか?

ありがとう

4

1 に答える 1