2016-11-20 8 views
-1

私は文字列の配列を持っています。彼らはURLです。私は各URLから特定の番号を取得したいと思います。文字列の配列からグラブ番号 - regex - javascript

これらのURLは、この形式である:

"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk" 

Iが111111あるbanner?l_id後の第五桁のコードをつかむたいです。 5桁目のコードを覚えておいてください。他の数字は任意の乱数にすることができます。必ずしもゼロではありません。

アレイサンプル:

["http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk" 
] 

私が言ったように、私は、URL文字列の配列を持っているとJavascriptを使用して5桁目コードをつかむためにどのようにそれを把握しようとしています。正規表現はこれを達成するのに役立ちますが、私は正規表現に慣れていません。

私はpythonがこれを解決するのが簡単かもしれないと言われましたが、私はchrome extを構築しています。これはJSを使用しています。

ご協力いただきありがとうございます。良いと考え、インデックスの選択とチェーン

あなただけのスプリット(と正規表現せずにそれを行うことができ
+1

あなたはまだ何をしようとしたことがありますか? //stackoverflow.com/questions/10889391/regex-get-numbers-after-character-string –

+1

'/ \/banner \?l_id =(?:\ w + - ){4}(\ w +)を参照してください。/'捕獲されたグループ#1を捕まえる – anubhava

+0

@anubhavaこれは、感謝しました!私はまだ正規表現を学んでおり、いくつかの正規表現コードを認識しましたが、 'l_id'の後に何が起きているのか分かりません。あなたはこのコードセットの背後にあるものについて説明しても構いません。再び、あなたの助けに感謝します。 – medev21

答えて

2

):

var addresses = ["http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk", 
 
"http://display.companyX.com/rest/banner?l_id=A000-0000-0000000-000000-111111-0-0-0&k=A77K_fakfhaskfhkjshfkjo=kafkjafk" 
 
]; 
 
var results = addresses.map(x => x.split("?")[1].split("&")[0].split("-")[4]) 
 
console.log(results);

+0

お世話になりました。このコードには別の質問があります。どのように私はユニークな5番目のコードでURLをつかむためにこのコードを使用することができますか?したがって、アドレス配列では、コンテンツは "... 111 .."、 "... 111 ..."、 "... 222 ..."、 "... 222 ..." 「... 333 ...」、「... 333 ...」と表示されます。最後に、ユニークな5番目のコード "... 111 ..."、 "... 222 ..."、 "... 333 ..."でURLを取得したいと考えています。 – medev21

+0

コメントボックスでは答えにくいので、新しい質問として投稿する必要があります。しかし、解はfilter((x、i、arr)=> arr.lastIndexOf(x)=== i) –

関連する問題