正規表現を使用して Web サイトからデータを抽出する方法を学び始めたばかりです。私の最初の目標は、Web サイトのタイトルを抽出することです。これが私のコードのようなものです:
<?php
$data = file_get_contents('http://bctia.org');
$regex = '/<title>(.+?)<\/title>/';
preg_match($regex,$data,$match);
var_dump($match);
?>
var_dump の結果は空です:
array(0) { }
最初は「bctia.orgにタイトルがないのかな?」と思いました。ただし、bctia.org のソースを確認したところ、~<title>
と</title>
.
それから、私のコードが機能しないのではないかと思いました。ただし、これも当てはまりません。たとえば、 、または などbctia.org
の他の Web サイトに置き換えたところ、どちらも正しい結果を返しました。たとえば、正しい結果が得られますbing.com
apple.com
apple.com
array(2) { [0]=> string(20) "" [1]=> string(5) "Apple" }
bctia.org
そのため、タイトルを抽出できない非常に特別なウェブサイトであるという結論に達しなければなりません...
本当にそうなのか気になりますよね?または、私のコードに私が特定していない問題があるのでしょうか?
前もって感謝します!