2016-06-15 23 views
-2

タグなしのタグの内容と一致する正規表現が必要です。htmlタグの内容を取得する

<p>content1<a>content2 <span>content3</span></a> content4</p> 
<a href="link">content1 <span>content2</span> content3</a> 

私は<.[^>]*>(.*?)<を取得しました。しかし、タグがキャプチャされます。
私はcontent1に一致したいcontent2 ... ありがとう。

+0

をdownvoteを再考あなたは 'コンテンツとsubcontent'が必要と述べました。最後の文は「サブコンテンツがキャプチャされました」です。それは反対です。あなたはサブコンテンツを必要としますか? – C4u

+0

申し訳ありませんが、私はを除外したいと考えています。編集されました。 – mrdotb

+0

取得したい正確な結果を表示してください。 – C4u

答えて

0

を追加します。

$html = fread($handle, filesize($argv[1]));⏎ 
preg_match_all('/<p[^>]*>(.*?)<\/p>|<a[^>]*>(.*?)<\/a>/', $html, $matchs); 
foreach ($matchs[0] as $content) 
    echo strip_tags($content); 
//With the html upper I get all the content 

...最初に多くのことを検索することなく、私はstackoverflowの上で質問してくださいません

0

Pタグに任意のIDを割り当てたり、jqueryを使用してPタグを取得して後で試してみると、正規表現パターンは必要ありません。

<p id="test">content1<a>content2 <span>content3</span></a> content4</p> 

とJavaScriptで最後に私がサブタグせずにコンテンツをキャプチャする方法を見つける

var result = document.getElementById("test").innerText 
+0

ありがとう、しかし私は正規表現が欲しいです。それはhtmlページにないテキストデータです。 – mrdotb

関連する問題