• ベストアンサー

PHPの正規表現による文字列置換について

下記のような文字列から「abcde」のみを変数に格納したいのですが、正規表現に苦戦しています。 http://example.com/detail.php?p=abcde.php 取得したい「abcde」のみが毎回変わり、その前後は固定です。 preg_replace()を使うのがいいのだろうなと思い、いろいろやってみているのですが、 なかなかマッチさせることができません。 どうかご教示頂けますでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
noname#244856
noname#244856
回答No.1

<?php $url = 'http://example.com/detail.php?p=abcde.php'; $pattern = '@\Ahttp://example\.com/detail\.php\?p=(.+?)\.php\z@'; $p = preg_match($pattern, $url, $matches) ? $matches[1] : false; var_dump($p); http://ideone.com/jQRDlS

yuri_tti
質問者

お礼

ありがとうございます。 大変、助かりました。