2012-04-18 14 views
-2

<div id="navigation"></div>タグの間のデータをhtmlコンテンツ(文字列)の正規表現を使用して抽出したいとします。どんな助けもありがとうございます。PHPのhtmlコンテンツからデータを抽出する

`$ html = load($ url);

preg_match_all ("/<div>(.+?)<\/div>/is", 
      $html, &$matches); 



$matches = $matches[1]; 
$list = array(); 

foreach($matches as $var) 
{ 
    print("<br>"); 
    print($var."<br>"); 
}` 

ここでは、特定のdivタグからデータを取得します。

+0

あなたがHTMLに正規表現を使用しないでくださいjqueryの –

+2

でそれを行うことができます。http://stackoverflow.com/a/1732454/118068。そして...あなたはこれまでに何を試しましたか?私たちはあなたのために何かを書くつもりはない、少なくとも何かをやろうと努力したことを証明しなければならない。 –

答えて

1

私はそれにする最も簡単な方法は、jqueryのを使用しているか、あなたはjQueryの

/

<div id='navigation'> 
    <p > 
     Navigation div contents 
    </p> 
</div> 

このコードを試してみてくださいを使用して

http://simplehtmldom.sourceforge.net/

+1

jqueryはサーバーサイドで行う必要がある場合は役に立たないでしょう。 –

1

このHTML PHPのphraserを試すことができると思います/ Javascript

var test= $('#navigation').clone(); 
alert(test.text()); 

+0

こんにちは@Naveenクマール - 返信いただきありがとうございます。ここであなたはどこにURLを渡していますか?私に説明していただけますか? –

+0

あなたはどんなURLをとっていますか? –

+0

私は、データの一部のセクションを取得しようとしている外部Webページのコンテンツを意味します。 –

0

述べたように:またYou can't parse [X]HTML with regex.

$url = "http://yo.ur/url/goes/here"; 

$dom = new DOMDocument(); 
$dom->loadHTML(file_get_contents($url)); 
$dom->preserveWhiteSpace = false; 
$element = $dom->getElementById('navigation'); 
echo $element->nodeValue; 

PHP load()? Are you kidding me?

+0

load()は私にウェブページのコンテンツを与えるカスタムクラスの関数です。 –

+0

それは '$ instance-> load()'のようなものでしょうか?そして、 'file_get_contents()'についてどうですか?ところで、私のコードに何か問題はありますか? –

+0

load()は適切な結果、つまりhtmlを文字列の形で与えています。それは問題じゃない。私は最初のフォームの結果を 'file_get_contents()'がうまく動作しているphpファイルに送りますが、2番目のフォームデータを別のphpファイルに送ると、 'file_get_contents()'は動作しません。 –

関連する問題