問題タブ [textmatching]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 関連性によるテキスト一致順序
MySQL では、結果のフィルタリングにも使用される一連のルールの順序で結果を並べ替える方法はありますか?
たとえば、名前フィールドとユーザーからの入力がある場合、次のようにレコードをフィルタリングして並べ替えたいと思います
入力を名前フィールドと照合すると
- 完全に一致
- 名前の入力完全一致の最初のキーワード
- 名前の入力完全一致の 2 番目のキーワード
- 名前は最初のキーワードで始まります
- 名前は 2 番目のキーワードで始まります
上記のケースに基づいて結果をフィルタリングし、上記の順序で並べ替えたいと思います。
入力: 2 つ 3 つ
データ:
| 1 つ |
| | 2 |
| | 3 |
| | 1 2 3 | 1 2 3 |
| | 1 3 2 | 1 3 2 |
| | 3 1 2 |
| | 2 3 1 | 2 3 1 |
出力:
| 2 |
| | 3 |
| | 2 3 1 | 2 3 1 |
| | 3 1 2 |
全文検索は可能な解決策かもしれませんが、私の過去の経験から、上記の方法で正確に並べ替えると、期待される関連性値が常に得られるとは限りません。
mysql - IN ステートメントを使用したテキスト一致に関する MySQL の問題
テキスト識別子を含む列を持つ大きなテーブル (200 万行) があります (これらは種のラテン名、Homo_sapiens、Tyranosaurus_rex などです)。
種のラテン名と「一般的な」名前を含む別のテーブルがあり、これをクエリして、ラテン名の小さな選択 (〜 140 名) を取得し、その一部を最初のテーブルにマップできます。名前がこの小さな選択に正確にマップされている最初のテーブルの行を取得したいと考えています。共通名には mySQL 'FULLTEXT" インデックスがあるため、小さな選択 (140 行のみ) を取得するために使用しているクエリは高速に実行されます。
しかし、SQL 演算子を使用してこれらを大規模な 200 万行のテーブルに一致させようとすると、IN
何分もかかります。
これは、latin_name 列に全文索引と通常の索引の両方を設定した場合でも当てはまります。
どうすればこれをスピードアップできますか? IN
インデックス付きテキスト フィールドで演算子を使用する際に問題はありますか? もしそうなら、テキストフィールドに使用できる特別な種類の「完全一致」インデックスはありますか? latin_name フィールドはどちらも "VARCHAR" 型で、最大長は小さなテーブルでは 190、大きなテーブルでは 200 です (違いがある場合)。
助けてくれてありがとう
要求どおり - テーブル定義は次のとおりです。
python - Python を使用して 2 つのプレーン テキスト ファイルを 1 行ずつ照合するにはどうすればよいですか
私の要件に従って、Windows プラットフォームの Python で 2 つのテキスト ファイルを 1 行ずつ照合したいと考えています。たとえば、次のテキスト ファイルがあります。
ファイル1:
私の名前はxxxです
コマンドが正常に完了しました。
私の母の名前はyyyです
私の携帯電話番号は 12345 です
大型トラックが真夜中に建物に衝突した
大型トラックが学部で赤いリンゴを食べる
ファイル 2:
私の名前はxxxです
指図 。成功しました。
私の母の名前は
建物に衝突したのはなんて重いトラックなんだ
トラックは学部でリンゴを食べる
十分に明確でなくて申し訳ありませんが、私の問題は、スクリプト ムービーをその字幕に合わせる方法です。Python で次のコードを書きますが、2 つのテキスト ファイルから位置合わせを取得するには不十分です。
誰かがこのマッチングを手伝ってくれるなら、私はとても感謝しています.
python - Python テキスト マッチング - シノニム
Pandas には A と B の 2 つの列があり、それぞれに用語の文字列が含まれています。私の目的は、列 A に最も類似している列 B のエントリを見つけることです。これを行うために既に TF-IDF を使用していますが、お金と通貨など、明らかに一致しない同義語が時々あります。
同義語を含む一致を見つけるにはどうすればよいですか?
php - テキストからテキストへの文字列マッチングに Knuth-Morris-Pratt アルゴリズムを使用することは可能ですか?
私はPHPにKMPコードを持っています。これは単語とテキストの間の文字列マッチングを行うことができます. テキスト間の文字列マッチングに KMP Algorithm を使用できるかどうか疑問に思っています。それは可能ですか?2つのテキスト間の文字列の一致を見つけるためにどのように使用できますか。
KMP アルゴリズムのコアは次のとおりです。
テキストで単語を検索するために使用する場合は、このクラスを index.php に呼び出します。
これは、コードに実行させたいステップです:(1)。テキスト1(2)を入力します。テキスト2(3)を入力します。テキスト1をパターンにしたい(すべての単語がテキスト1にあり、パターンとして扱う)(4)。私のコードがテキスト 2 のテキスト 1 のすべてのパターンを見つけられるようにしたい (5)。最後に、私のコードは、類似性のパーセンテージを表示できます。
皆さんが私を助けたり、教えてくれることを願っています。どこでも答えを探していますが、まだ見つかりません。少なくともあなたは私に教えることができます。