phpのpreg_matchにて正規表現によるマッチングを行ないます。取得してあるhtmlより、.pdfをマッチングしたいです。具体的には <a href="http://www.xxx.com/xxx.pdf">ぴーでーえふ</a> のhttp://www.xxx.com/xxx.pdfのみをマッチングしたいです。preg_matchを書いてください

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/09/04 21:54:57
  • 終了:2010/09/05 20:58:31

ベストアンサー

id:windofjuly No.3

うぃんど回答回数2625ベストアンサー獲得回数11492010/09/05 12:46:08

ポイント43pt

ごめんなさい。拡張子.PDFだけに対応させる部分を抜かしておりました

(大文字小文字への両対応として i も付け加えておきました)

(コメント欄では文字化けしそうなので回答欄で失礼しています)

<?php
$a=<<<Eot
<a name="a" href="http://www.xxx.com/xxx.Pdf" style="">ぴーでーえふX</a>
<a href = "http://www.xxx.com/yyy.pdf" name="b">ぴーでーえふY</a>
Eot;
preg_match( '|<a.+href\s*=\s*"(.*?\.pdf)".+?>|i', $a , $m );
print_r( $m );
preg_match_all( '|<a.+href\s*=\s*"(.*?\.pdf)".+?>|i', $a , $m );
print_r( $m );
id:sitterutsumori

ありがとうございます

2010/09/05 20:51:58

その他の回答(2件)

id:windofjuly No.1

うぃんど回答回数2625ベストアンサー獲得回数11492010/09/05 05:33:01

ポイント27pt

preg_match_all のほうが良いかもしれないので preg_match と両方のテストケースを書いてみました。比較してみてください

<?php
$a=<<<Eot
<a name="a" href="http://www.xxx.com/xxx.pdf" style="">ぴーでーえふX</a>
<a href = "http://www.xxx.com/yyy.pdf" name="b">ぴーでーえふY</a>
Eot;
preg_match( '|<a.+href\s*=\s*"(.*?)".+?>|', $a , $m );
print_r( $m );
preg_match_all( '|<a.+href\s*=\s*"(.*?)".+?>|', $a , $m );
print_r( $m );
id:sitterutsumori

それだと.pdf以外も拾いませんか?

2010/09/05 11:08:17
id:tasklight No.2

tasklight回答回数323ベストアンサー獲得回数402010/09/05 09:59:21

ポイント10pt

こんな感じになるでしょう。

preg_match("/http:\/\/.*\.pdf\">/i", $html);
id:sitterutsumori

無理でした

2010/09/05 11:08:25
id:windofjuly No.3

うぃんど回答回数2625ベストアンサー獲得回数11492010/09/05 12:46:08ここでベストアンサー

ポイント43pt

ごめんなさい。拡張子.PDFだけに対応させる部分を抜かしておりました

(大文字小文字への両対応として i も付け加えておきました)

(コメント欄では文字化けしそうなので回答欄で失礼しています)

<?php
$a=<<<Eot
<a name="a" href="http://www.xxx.com/xxx.Pdf" style="">ぴーでーえふX</a>
<a href = "http://www.xxx.com/yyy.pdf" name="b">ぴーでーえふY</a>
Eot;
preg_match( '|<a.+href\s*=\s*"(.*?\.pdf)".+?>|i', $a , $m );
print_r( $m );
preg_match_all( '|<a.+href\s*=\s*"(.*?\.pdf)".+?>|i', $a , $m );
print_r( $m );
id:sitterutsumori

ありがとうございます

2010/09/05 20:51:58

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません