2012-03-13 19 views
1

どのように行うのかを知りたかっただけです。自動入力のものにユーザー入力を太字で入力してください

私は彼がそれを書いている間に私がユーザアドレスを記入することを許可するWebサービスを持っています。 提案が表示されたら、ユーザー入力と一致する提案ラベルの部分を太字のタグで囲んでください。

"マッチング"を巧妙にしたいと思います。私たちが使用するWSも賢明ですが、私はそのコードを持っていないので、単純な/置き換えだけではありません。 exempleについては

Input: 3 OxFôr sTrE 
Ws result: 3 Oxford Street 
Formatted: <b>3 Oxford Stre</b>et 
Formatted: [bold]3 Oxford Stre[/bold]et 

が、私はJSまたはJavaでそれを行うことができます。 私はJSでそれをやっていますが、おそらくLuceneが助けてくれるJavaを使っていますか?

どのように処理することができますか?

+1

JavaやJavaScriptが必要ですか? 1つは見つかった表現のクライアント側の*表示*であり、もう1つは可能な値を見つけるためのサーバ側のバックエンドです。ここには2つの異なる*問題/質問があります。 1つに集中してください。 –

+0

@pst no質問は1つだけです。どちらの場合でも、私は可能な値を見つけるためにサーバー側のバックエンドは必要ありません。あなたはまた私にあなたのpython、ルビー、バットまたはshの解決策を与えることができます –

答えて

1

検索エンジンまたはカスタムデータ構造を使用してNGramを使用してテキストを索引付けします。私は、NGrams &を使用して約10億のクエリワードを索引付けして、各タイプの問合せの頻度ごとにソートして表示することによって、自動推奨事項を実装しています。 Lucene/Solrがここでお手伝いします。 Lucene/Solrを使用している場合は、強調表示されたもの(尋ねられたとおり)がデフォルトでタグに囲まれ、Lucene/Solrが提供するngramインデックス機能を利用することもできます。

LinkedIn Engineering最近オープンソースのCleo先読み検索):Link

LinkedInには素晴らしいものがあります。あなたが望むように賢いマッチングと強調表示をチェックしてください

+0

ありがとう –

関連する問題