現在、Javascript Search()メソッドを使用して文字列内の一致を検索しています。 文字列が「apple iphone」で、人が「iphone 6」を検索して一致するような場合など、最も近い一致を探したいのですが、何らかの理由で.searchメソッドが機能しませんこちらです。Javascriptでより効率的に.search()メソッドを使用できますか?
これを使用するとより効果的な方法がありますか?
const test = "apple iphone"
// this doesn't return -1 indicating there was a match
console.log(test.search('iphone'))
// this returns -1 indicating there wasn't any match at all despite there
// being the word "iphone" in there
console.log(test.search('iphone 5'))
弾性検索を使用してみてください。関連性スコアで必要なものを返す – TheChetan
検索の代わりに、 '.match()'を使うことができます。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match –
また、正確な類似性を気にせず、同様の部分を見つける必要がある場合は、 '.split'関数を使用することもできます。あなたの文字列はスペースインジケータで分割され、次に 'iphone 5'、' iphone'と '5'のために' indexOf'を一度使うことができます。 –