5

Facebook の URL から Facebook のユーザー名または ID を取得しようとしています。それは単純な正規表現関数に過ぎないと確信していますが、試してみましたが、自分ではできないようです。

これが私がURLから取得しようとしてきたものです。

http://www.facebook.com/ myusername /

または数値ID

http://www.facebook.com/2285652/ _ _

PHPを介してこれを達成するのを手伝ってくれる人がいれば、とても感謝しています

4

2 に答える 2

16
preg_match('#https?\://(?:www\.)?facebook\.com/(\d+|[A-Za-z0-9\.]+)/?#',$str,$matches);

パターンは用途が広いので、次のように一致します。

  1. http と https の URL。
  2. wwwプレフィックスの有無にかかわらず URLです。
  3. 末尾の/.
  4. Facebook の数値 ID と一致します。
  5. ユーザー名に関する Facebook のルールに一致します。

ユーザー名には、英数字 (A ~ Z、0 ~ 9) またはピリオド (".") のみを含めることができます。

于 2012-10-01T19:32:15.177 に答える
4

正規表現なし:

$array = parse_url($url);
echo trim($array['path'], '/');
于 2012-10-01T19:33:31.603 に答える