2016-09-12 16 views
-1

私がしようとしているのは、URLに基​​づいてオプションを選択することです。だから私がこれまでにやったことは、URLを取得してオプションにマッチさせることです。配列にマッチを格納し、次に 'http'、 'org'などのいくつかの用語を削除しました.2つのキーワードに絞り込むことができました。用語の配列に基づいてオプションを選択する

ここで、配列内のキーワードの1つに一致するオプションを選択する必要があります。

私は 'filter'を使用しようとしました:とマップが含まれていますが、1つの用語と配列を使用している場合にのみ動作します。だから私がする方法を知る必要があるのは、最初の試合に基づいて選択と選択です。オプションのテキストから配列内の用語まで。

//this is my arr 
var arr = ["Pro_life", "Inactive"] 

//this is the text from the options 
FB_Ext_Pro_life_Specific_Inactive 
FB_register_now 

私は、アレイからの用語で「FB_Ext_Pro_life_Specific_Inactive」を選択する方法を見つける必要があります。 誰もが考えている?

+0

あなただけの両方のオプションをフィルタリングし、「または」を行い、コード – depperm

+1

の多くを含めることができますか? ( '||')または両方とも必要な場合は( '&& ') – DBS

+0

あなたは何が助けになると思いますか?どのように選択オプションを取得するのですか、または用語配列をどのように生成しましたか? – user3943543

答えて

1

私は完全にあなたの質問を取得できませんでしたが、私はこの

var arr = ["Pro_life", "Inactive"] 
 

 
var options = ["FB_Ext_Pro_life_Specific_Inactive", "FB_register_now", "sample_Inactive__"] 
 

 
for (var x = 0; x < arr.length; x++) { 
 
    for (var y = 0; y < options.length; y++) { 
 
    if (options[y].indexOf(arr[x]) != -1) { 
 
     console.log("Option " + options[y] + " matches with " + arr[x]); 
 
    } 
 
    } 
 
}

キーワードはオプション

0

と一致した場合には、チェックのためindexOf()を使用していますが、かもしれませ作るために管理あなたはこのようにすることができます。

var arr = ["Pro_life", "Inactive"], 
 
    str = "FB_Ext_Pro_life_Specific_Inactive\nFB_register_now", 
 
result = str.split("\n") 
 
      .filter(s => arr.some(k => s.indexOf(k) !== -1)); 
 
console.log(result);

関連する問題