0

私は何千もの URL をチェックして個別の変数に分解する必要があります。

私が探しているURLは次のようになります:-

http://www.mydomain.com/facebook-pages/252090964881271-smirnoff

http://www.mydomain.com/facebook-pages/3312880235580-facebook-for-every-phone

http://www.mydomain.com/facebook-pages/2449443856-candy-crush-saga

私が無視したい他のものには、次のような数字がありません:-

http://www.mydomain.com/facebook-pages/media/

次で始まる文字列を識別できる正規表現パターンが必要です:-

http://www.mydomain.com/facebook-pages/ および ALSO には一連の数字 (可変長) が含まれています。

次に、コード (数字) と数字の後のテキストを抽出する必要があります。次に例を示します。

$pagecode = "2449443856

$pagename = "キャンディー クラッシュ サガ"

この文字列からhttp://www.mydomain.com/facebook-pages/2449443856-candy-crush-saga

私はすべての異なる正規表現文字列を試しましたが、本当に苦労しています。誰でも助けてもらえますか?

ありがとう

ジョナサン

4

2 に答える 2

1

これを試して、

$str = 'http://www.mydomain.com/facebook-pages/2449443856-candy-crush-saga';
if (preg_match('/^http:\/\/www.mydomain.com\/facebook-pages\/([0-9]+)-(.*?)$/si', $str, $match)) {
  $page_no = $match[1];
  $page_name = $match[2];
}
于 2013-06-17T15:31:22.430 に答える
0
$string = 'http://www.mydomain.com/facebook-pages/2449443856-candy-crush-saga';

if (preg_match('@^http://www.mydomain.com/facebook-pages/([0-9]+)-(.+)$@', $string, $matches)) {
    $pagecode = $matches[1];
    $pagename = $matches[2];
}
于 2013-06-17T15:31:54.927 に答える