問題タブ [metaphone]

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 投票する
2 に答える
1267 参照

metaphone - ダブルメタフォンエラー

私はLawrence Philips Double-Metaphoneアルゴリズムを使用して大きな成功を収めていますが、いくつかの組み合わせで奇妙な「予期しない結果」を見つけました。

他の誰かが共有しても構わない他の部分のアルゴリズムに追加または変更を加えているか、または期待どおりに機能しないことがわかった組み合わせだけを持っていますか。

例えば。次の間に問題がありました:

  • ピーシルとブッシュリー。(どちらもPXLと一致)
  • ロックリフとロッククリフ (RKLF と RKKL)
0 投票する
1 に答える
1786 参照

metaphone - Double Metaphone のテストスイート?

Double-Metaphone を ActionScript3 に変換しました。ソースを公開する前に (明らかに) テストしたいと思います。

プライマリ コードとセカンダリ コードを含む名前の長いリストを探しています。Google は、名前のペアを含む 1 つのリスト以外は何も検出しません (おそらく一致するはずです)。

ありがとう

0 投票する
2 に答える
9360 参照

algorithm - 英語以外の文字の soundex/metaphone を有効にする

ここ数日、soundex、metaphone、およびその他の文字列検索手法を研究してきました。私の理解では、英語以外の単語を英語に音訳した場合、両方のアルゴリズムがうまく機能します。

ただし、そのような検索が、ドイツ語、ノルウェー語、さらにはキリル文字などのアルファベットに対応する、文字変換されていない元の言語で機能する必要があります。

これらのアルファベットを完全に処理できる検索アルゴリズムはありますか? それとも、Lucene などのサードパーティの全文検索ライブラリを使用したほうがよいでしょうか? したがって、質問は「Lucene は英語以外のアルファベットを処理しますか?」になります。

0 投票する
2 に答える
2484 参照

php - PHP での関数 metaphone() と soundex() の実際の使用法は何ですか?

Metaphone と Soundex は、英語の発音で文字列にインデックスを付ける音声アルゴリズムです。

標準 PHP ライブラリにある関数metaphone()またはsoundex()を使用したことがありますか?

何のために?これらの関数の実際の使用法は何ですか?

0 投票する
2 に答える
279 参照

mysql - MySQLで3文字以下の単語を取得する

近隣の名前の束を含むフィールドを持つテーブルがあります。これらの近隣の一部には、2つ以上の単語が含まれる名前があります。3文字以下で、名前の途中に3つ以上の単語が含まれている単語のリストを取得するにはどうすればよいですか?

例えば:

=何もしない、1語だけ
ゴールデン湖 =何もしない、2語だけ
金の湖 =「の」抽出

本質的には、メタフォン文を作成するときに削除する「ゴミ」の単語のリストを作成したいと思います。

0 投票する
2 に答える
1421 参照

ms-access - Microsoft アクセスで metaphone を実装する方法は?

Microsoft Access のパターン マッチングに metaphone アルゴリズムを使用したいと考えています。http://www.snakelegs.org/2008/01/18/double-metaphone-visual-basic-implementation/で 1 つのコードを見つけまし たが、動作せず、Microsoft Access 2007 がハングアップします。

私はsoundexを試しましたが、私の目的には十分ではありません。

どんな助けもかなりのものです...

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

php - 配列内の文字列の一部を検索するにはどうすればよいですか?

文字列全体または文字列の一部が配列の一部であるかどうかを検索したいと思います。これはPHPでどのように達成できますか?

また、メタフォンを使用するにはどうすればよいですか?

例:

で検索するarray1array2、次のようになります。

「インド」は「インドは東にある」と一致する必要があり、米国と中国も同様です。

0 投票する
2 に答える
1592 参照

sql-server - メタフォン3情報

T-SQLに一致するMetaphone3のコード、または少なくともDoubleMetaphoneとMetaphone3の違いを詳細に説明するコードがどこにあるか知っている人はいますか?私はSQLServerでさまざまなマッチングアルゴリズムの評価に取り組んでおり、このアルゴリズムがどのように機能するかを確認したいのですが、それに関する情報はほとんど見つかりません。

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

php - PHPメタフォンの実装のバグ

私はC#のメタフォンの実装をテストし、その結果をPHPの組み込みのmetaphone()関数と比較しています。ただし、バグ(以前はPHPの課題追跡システムに文書化されてメーリングリストで説明されていました)に遭遇しましたが、個人的な興味のために、バグの背後にあるCコードを理解しようとしています。

基本的に、メタフォンアルゴリズムによれば、-gh-のほとんどのインスタンスはサイレントにする必要があります。「ライト」の特定のテストケースでは、「RT」のメタフォンキーを期待します(そして私自身のアルゴリズムで生成します)

ただし、PHPのメタフォン関数はRFTを返します。明らかに、それは単語の終わりにあるかのように-gh-をFに変換します(たとえば「ラフ」)が、単語「ライト」の場合、-gh-は言葉の終わりに来ないでください。PHPソースディストリビューションのmetaphone.cファイルを見ると、いくつかの重要なことがわかります。

そして、342行目:

誰かがNOGHTOF関数が正確に何をするのか、そしてなぜこのコードが「ライト」の-gh-のFを誤ってレンダリングしているのかを理解するのを手伝ってもらえますか?私は実際にはCの人ではないので、コードは私にはまったくわかりません。

0 投票する
2 に答える
7389 参照

php - Mad Gab スタイルのフレーズを作成するための soundex() または metaphone() を使用したアルゴリズム

Mad Gabスタイルのフレーズを提案するアルゴリズムを作成しようとしています。

入力はフレーズのセットです。また、可能であれば使用したいキーワードのセットもあります。現在、私の解決策は単純にブルートフォースです:

  • フレーズをループする (文字ごと)
    • キーワードが見つかった場合
      • キーワードと分岐を格納 (再帰)
    • 文字数を増やす

ただし、私が直面している問題は次のとおりです。

  • 複合キーワードの説明。たとえば、「キャッチ」は「キャッチ」、「猫」+「チーズ」のようになります
  • 「the」、「and」、「one」、「two」、「three」などの文字通りの用語を許可します。
  • キーワードではない用語を提案する方法。つまり、キーワードやリテラルが見つからない場合は、システム ディクショナリのようなものに頼ります。
  • フレーズ セグメントをスキップします。現在、1回のパススルーのみです。しかし、フレーズが一致しないもので始まり、数文字後に一致が含まれる場合を考えてみましょう。

私は PHP と MySQL に最も精通しています。ただし、より優れたソリューションが提供される場合は、別のテクノロジを受け入れます。

また、追加の提案にも興味があります。特に、 の 2 番目のパラメーターを使用してより難しい提案metaphone()を行う方法。