Shotnest · ライブラリ
部分文字列の一致を理解する
Shotnestの検索ツールでは「order」が「preorder reference」に一致します。検索は部分文字列を探しますが、分類器は語の境界を確かめるからです。
部分文字列の検索とキーワードの境界
検索ツールは、正規化した記録のテキストのどこかに正規化した検索語が含まれていれば、長い語の中であってもその記録を残します。orderはpreorderの中にあるので記録1が一致し、記録2の「delivery note」は一致しません。分類器はもっと厳密です。ラテン文字とキリル文字のキーワードでは、キーワードの直前と直後に文字が続かないことを求めます。そのため、棚の判断と検索の一致は別のルールに従います。
アプリの検索も入力した語ごとに部分文字列で探し、さらに改行で分かれた語をつないだ二つ目の形のテキストも調べます。そのため、行末でハイフンで区切られた語も見つかります。
部分文字列の確認の前に正規化が行われるので、cafeで検索すると、長い語の中のcaféも見つかります。
入力値
- スクリーンショット内の文字を検索
- order
| 行 | テキストの記録 |
|---|---|
| 1 | preorder reference |
| 2 | delivery note |
結果
- 一致した記録
- 1
| 行 | テキストの記録 |
|---|---|
| 1 | preorder reference |
広すぎる一致を絞り込む
- orderで検索し、記録1がpreorderを通じて一致することを確かめます。
- 結論を出す前に、一致した語全体を読みます。
- 注文番号のような特徴的な部分を加えます。「order #4471」に一致するのは、それを含む記録だけです。
- スクリーンショットを開き、一致の周りの文脈を見ます。
- 検索語order · 記録preorder reference、delivery note
- 一致した記録:1
- 検索語order #4471 · 三つ目の記録「Order #4471 shipped」を追加
- 一致した記録:3
ごく短い検索語は広く一致します。payで検索すると「Repayment schedule」にも「Pay now」にも一致するので、ツールは記録1と2を返します。
部分文字列の一致の読み違い
- preorderでの一致を、実際の注文の記録とみなすこと。
- 「pay」のような短い検索語は支払いだけを見つけると思うこと。それを含む語も見つかります。
- 検索の一致で、分類器が選んだ棚が変わると期待すること。
- コピーしたテキストで語が行をまたいで分かれているとき、短い部分で検索せずにあきらめること。
一致は分類ではない
部分文字列の一致からわかるのは、ある文字がどこに現れるかです。その記録が何についてのものかはわかりません。下にリンクした検索ツールで候補を見つけ、一つずつ読んでください。
部分文字列の一致は、文字がどの行にあるかも無視します。記録全体ではなく、スクリーンショットで一致した行そのものを読んでください。