問題タブ [text-search]

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.

0 投票する
1 に答える
1627 参照

java - Lucene テキスト検索のエラー

私はテキスト検索が初めてで、ルセンに関連するいくつかの例を研究しています。このリンクから例の1つを見つけました。http://javatechniques.com/blog/lucene-in-memory-text-search-example/ Eclipse IDE で試してみました。しかし、それはいくつかのエラーを与えます。関連するjarファイルもすべてインポートしました。

コードは次のとおりです。

public class InMemoryExample {

IndexWriter.MaxFieldLength.LIMITED);

ただし、次の行にいくつかの構文エラーが表示されます。

エラー 1:

IndexWriter writer = 赤で MaxFieldLength に下線を引く new IndexWriter(idx, new StandardAnalyzer(Version.LUCENE_48), IndexWriter.MaxFieldLength.LIMITED);

エラー 2: optimeze() に赤で下線を引く

ライター.optimize();

エラー 3: new IndexSearcher(idx) に赤で下線を引く

Searcher searcher = new IndexSearcher(idx);

エラー 4: 検索に赤で下線を引く

searcher.search(クエリ、コレクター);

これらのエラーを取り除くのを手伝ってもらえますか? とても助かります。ありがとう

変更されたコード:

public class InMemoryExample {

public static void main(String[] args) throws Exception{ // RAMDirectory を構築して、 // インデックスのインメモリ表現を保持します。RAMDirectory idx = 新しい RAMDirectory();

StandardAnalyzer(Version.LUCENE_48)); IndexWriter ライター = 新しい IndexWriter(idx, cfg);

これは出力です:

スレッド「メイン」の例外 java.lang.VerifyError: クラス org.apache.lucene.analysis.SimpleAnalyzer は最終メソッド tokenStream をオーバーライドします。(Ljava/lang/String;Ljava/io/Reader;)Lorg/apache/lucene/analysis/TokenStream ; java.lang.ClassLoader.defineClass1(ネイティブ メソッド)で java.lang.ClassLoader.defineClass(不明なソース)で java.security.SecureClassLoader.defineClass(不明なソース)で java.net.URLClassLoader.defineClass(不明なソース)で.net.URLClassLoader.access$100 (未知のソース) で java.net.URLClassLoader$1.run (未知のソース) で java.net.URLClassLoader$1.run (未知のソース) で java.security.AccessController.doPrivileged(Native Method) でjava.net.URLClassLoader.findClass(不明なソース) java.lang.ClassLoader.loadClass(不明なソース) で sun.misc.Launcher$AppClassLoader.

0 投票する
1 に答える
467 参照

git - git commit 中に追加または編集したすべての TODO コメントを出力する方法

git バージョン管理されたプロジェクトのすべてのコミット内で追加または編集したすべての TODO コメントを一覧表示するにはどうすればよいですか? 他の人の TODO コメントは見たくありません。

出力には、実際TODO コメントを含むすべての行が表示されます。

コミット自体をリストするだけではありませんgit log -S TODO

0 投票する
5 に答える
6677 参照

git - 現在のすべての TODO メッセージを git リポジトリに一覧表示するにはどうすればよいですか?

git 管理されている現在のコード ベースに存在する、私だけが書いた TODO コメントをすべて表示したいと考えています。

これまでのところ、完全な git 履歴の中で作成または変更したすべての TODO コメントを出力しています。git log -p --author="My name" -S TODO | grep "\+.*TODO"

しかし、このツール チェーンには、これまでに作成されたすべての TODO コメントが一覧表示されます。これには、既に解決済みでコードから再度削除されたものも含まれます。

現在のコードベースを行ごとに検索し、「TODO」が含まれているかどうかを確認し、この行が私が作成したものであるかどうかを確認できる適切なツールチェーンは何ですか?

0 投票する
0 に答える
66 参照

sorting - 検索結果の並べ替え

フレーズ検索とキーワード検索を一緒に実装しています (おそらくこの種の検索には名前がありますが、わかりません)。たとえば、 I like turtlesという検索は次のように一致する必要があります。

つまり、文字列には一致するすべてのキーワードが含まれている必要があります。

次に、検索結果の並べ替えの問題が発生します。

単純に、一致が結果の先頭と元のクエリに最も近いほど、結果が優れていると想定しています。このコードをどのように表現できますか?

私の最初のアプローチは、元のクエリに基づいて、キーワードが予想される位置にどれだけ近いかに基づいて、各結果の各キーワードにスコアを割り当てることでした。擬似コード:

スコアが低いほど、結果は良好です。上記の例のスコアは十分にまともなようです。

これは、検索結果を並べ替えるための実行可能なアプローチですか?

あらゆる種類のセマンティック分析はさておき、それを改善するために他に何を検討できますか?

0 投票する
1 に答える
231 参照

r - Rの可変引数高速テキスト検索機能

大きなdata.tableから次のサンプルデータがあります。

可変数のテキスト引数を送信できる関数を作成する必要があり、関数はデータに対して AND 検索を実行し、すべてのテキスト検索引数を持つすべての行を出力する必要があります。異なる検索文字列を異なる列に入れることができます。

たとえば、searchfn(ddf, 'brazil','third') は最後の行のみを出力する必要があります。

ケースは無視する必要があります。

データが大きいため、検索は高速で速度を最適化する必要があります (したがって、data.table を使用します)。

私は試した:

送信された検索文字列をすべてピックアップして検索番号を表示しますが、検索が適切ではありません。

0 投票する
0 に答える
710 参照

c++ - テキスト検索にアクセラレータ ctrl+F を追加

gtkmm テキストビュー プログラムに Ctrl+F アクセラレータを追加しようとしています。すでに検索機能を gtk Entry フィールドに実装しているので、必要なのは Ctrl+F が押されたときに検索エントリにフォーカスすることだけです。

私はググってgtkmmのチュートリアル/リファレンスをチェックしました(2.4、私はそれで作業しています)が、私が見つけた唯一のものはUIManagerを使用するメニューとツールバーとのコンテキストでのアクセラレータであり、私が使用する.ccファイルにはありません(それらを追加することはできません。既存のプログラムが原因です)。

ボタンに AccelKey を使用してアクションを追加しようとしたり、関数 add_accelerator() を試したりしましたが、適切に使用できませんでした (私は gtkmm にかなり慣れていないため、十分なサンプルがありません - 少なくとも私が理解できるものはありません) . ここで私が試したいくつかの例:

作成したボタン (ツールバー内) にこのアクションを追加する方法がわかりませんでした...

ここで何かを試しましたが、ここに入力する必要があるパラメーターも、このメソッドがどのように機能するかもよくわかりませんでした-機能しませんでした...

誰かがこれがどのように適切に機能するかを説明してくれたら本当に嬉しいです。私の下手な英語を申し訳ありません. 必要なものがあれば教えてください。前もって感謝します

ご挨拶

編集: gtk ソースを調べて、add_accelerator のパラメーターを理解しようとしました。今私はこれを試しましたが、まだ動作しません...:

アップデート:

さて、私は今考えているほとんどのことを理解しており、なぜそれがうまくいかないのかを知っています. 問題は、accel_group をウィンドウ ウィジェットに追加する必要があることですが、プログラムでスクロールされたウィンドウとボックスしか取得できませんでした....そして、続行する方法がわかりません... :)

更新 2:

「on_key_press_event」ハンドラーを使用して状態とkeyvalパラメーターをチェックすることで、アクセラレーターなしでそれを行うことができました。これが少なくとも一部の人に役立つことを願っています^^。

アクセラレータを使用したソリューションがあれば、まだ興味があります。ご挨拶

0 投票する
3 に答える
96 参照

sql-server - SQL テーブルから文字列を含む単語の数を見つける

特定の文字列を検索し、説明フィールドにその文字列が含まれるリストを作成するように依頼されました。問題ない。この場合、LIKE '%man%' を使用すると、'man' を含む一連のレコードが得られました。これは、'manage'、'management'、'mankind' などの出現も示します。'man' を含む単語のリストと出現回数を含むレコードセットを探したいと思います。これは SQL 2008 で可能ですか? もしそうなら、あなたは私を正しい方向に向けることができますか?

0 投票する
1 に答える
215 参照

oracle - Oracle あいまいテキスト検索で、複数の類似した単語を含む文字列は、完全一致の文字列よりも高いスコアを持っています

Oracle で次のテキスト検索クエリを実行すると:

最高スコア 100 の返されたレコードは、'citi' に類似した単語を複数含むレコードです:
City of Kansas City - スコア 100

しかし、完全一致を含むレコードのスコアは 76 しかありません:
Citi Group - スコア 76

類似語を 1 つだけ含むレコードのスコアは 53アビリーン
市- スコア 53

完全一致のレコードが最高のスコアを持つべきではありませんか? それを達成する方法はありますか?

80に増やすsimilarity_scoreと、'city' を含むレコードは返されなくなります。ただし、それにより、他の検索で返されるレコードの数が減ります。

2に減らすnumtermsと、'city' を含むレコードは返されなくなります (明らかに、Oracle は 'city' を 'citi' の 2 番目に類似した単語と見なしていません)。ただし、これにより、他の検索で返されるレコードの数が再び減少します。