2017-08-19 11 views
-1

FacebookのプロフィールURLからIDの値を抽出するJavaScript正規表現が必要です。例えば、私は、URLfacebookからのid値の抽出url

https://www.facebook.com/profile.php?id=100004774025067 

を持っていると私はちょうど数だけ100004774025067一部であるid=後の値を抽出したいです。

しかし、場合によっては投稿からユーザープロフィールURLが必要になります。たとえば、ユーザーが何かを掲示し、私はポストのプロフィールURLリンクを取得する場合、私はこのようなリンクを取得:

https://www.facebook.com/profile.php?id=100001883994837&hc_ref=ART7eWRecFS8mMIio66GdaH378zlJMXzisnKubh5PtgINeVwTfOil5aBIyff71OamWA 

あなたが見ることができるように、idの値の後に指定された追加のパラメータがあります。

他のリンクに関係なく、idの値を取得するだけで済みます。

答えて

0

あなたはURLなどの文字列を使用してsearchParams使用idパラメータを抽出することができます。より多くのパラメータを持つ

var fb_url = "https://www.facebook.com/profile.php?id=100004774025067"; 
 
var url = new URL(fb_url); 
 
var uid = url.searchParams.get("id"); 
 
console.log(uid);

追加のパラメータを指定しない

var fb_url = "https://www.facebook.com/profile.php?id=100004774025067&hc_ref=ART7eW"; 
 
var url = new URL(fb_url); 
 
var uid = url.searchParams.get("id"); 
 
console.log(uid);

+0

は、あなたとその完璧なソリューションに感謝 – Antesoft

0

あなたは次のようにそれを行うことができ、IDの後に任意の数と一致する

function getNumber(str){ 
 
    console.log(str.match(/(?:id=)(\d+)/)[1]); 
 
    return str.match(/(?:id=)(\d+)/)[1]; 
 
} 
 

 
getNumber('https://www.facebook.com/profile.php?id=100004774025067'); 
 
getNumber('https://www.facebook.com/profile.php?id=100001883994837&hc_ref=ART7eWRecFS8mMIio66GdaH378zlJMXzisnKubh5PtgINeVwTfOil5aBIyff71OamWA ');

関連する問題