2012-04-23 9 views
0

私には閉じられていないタグが付いた正規表現が必要なので、それらを見つけてプログラムで閉じることができます。未終了のHTMLタグを見つけて閉じようとする正規表現

と同様に、私はこのから閉じられていないタグを検索し、正規表現を使用して、それらを閉じたいテキスト

<tag> 
<p> hello world <p> this is <p>test.</p> this is test. <p> end it 
</tag> 

の下に持っています。

任意のアイデア?? ありがとうMeghana

+0

私は個人的にタグが閉じられる場所になると思います.1)開けてすぐに閉じることができます。2)次のタグが見つかると閉じられます(ANY)3)同じ時に閉じることができます。 (ほとんど役に立たない?)また、タグやタグのタグを閉じる方法はもっとたくさんあります。あなたが探しているものを見つけるのは簡単ではありません。 –

+0

次のタグが始まる前に閉じることができます。 – meghana

答えて

6

Regexはこのタスクには適していません。理由の説明は、hereを参照してください。

HTML Agility Packを使用してHTMLを解析して書き直すことをお勧めします。

+1

+1のために正規表現を使用してhtmlを解析しないでください - http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html – brendan

+0

返信用に@Oded、ありがとうございます私はこのHTMLをXMLとして扱いますか? – meghana

+0

ここではOdedと同意します。 Agility Packは構文解析で寛容であり、その後、整形式のhtmlを出力できます。何もストライプされていないかどうかテストしてください(コメント、重要な空白を考える)。私はAgilityパックが完璧な出力に近づくことを確信していますが、あなたがそれを呼び出すことができるオプションを調査してください。 – buckley

関連する問題