• ベストアンサー

「20091022_1234.txt」の1234を変数に代入したいとき

PHP上で、「20091022_1234.txt」の1234を変数に代入したいときは、どのような関数・正規表現を使用すればよいのでしょうか?

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

#1さんのだと、ちょっと問題があるので補足 _([0-9]+).txt$ がパターンだと.はすべての文字にマッチするのでエスケープすべきでしょう。 なおeregは非推奨(将来削除予定)のためpregに改めたほうがよいです <? $str = "20091022_1234.txt"; preg_match("/_([0-9]+)\.txt$/", $str, $regs); print_r( $regs); ?>

koga2021
質問者

お礼

ありがとうございます。 マッチ結果が配列に入るんですね。

その他の回答 (1)

  • UmJammer
  • ベストアンサー率58% (115/196)
回答No.1

細かい条件がわかりませんが、ひとまず下記のコードで$regsの2番目の要素に1234が代入されます。 $str = "20091022_1234.txt"; ereg("_([0-9]+).txt$", $str, $regs);

関連するQ&A

専門家に質問してみよう