※ ChatGPTを利用し、要約された質問です(原文:C#でタグを削除する方法)
C#でタグを削除する方法
このQ&Aのポイント
C#でhtmlファイルからタグを削除する方法を解説します。
正規表現を使用して、大文字で書かれたタグも削除することができます。
StreamReaderとStringBuilderを使用して、htmlファイルを読み込み、タグを削除する方法を紹介します。
htmlファイルをtextBoxに読み込んで、その中にあるタグのみを正規表現で削除したいです。
FileStream file = File.Open
( @"c:\test.html", FileMode.Open );
Encoding enc = Encoding.GetEncoding("Shift_JIS");
reader = new StreamReader( file ,enc);
StringBuilder text = new StringBuilder();
while(reader.Peek() != -1)
{
string A = reader.ReadLine().ToString();
A = Regex.Replace(A,@"<(([^>]|\n)*)>","");
text.Append(A);
}
textBox1.Text = text.ToString();
とすると、ある程度のタグは削除できるんですが、<DIV
などの大文字で書かれたタグが削除できませんでした。
解る方いらっしょいましたら宜しくお願いします。
お礼
1行ずつ出ない方法で全てのタグが削除されました。 ありがとうございました。後は以外の文が取り除ければ OKなんですが・・・。 解りましたら宜しくお願いします。 BODY { FONT-FAMILY: ヒラギノ明3-Leaf外字付等幅,"MS P明朝"}B { FONT-FAMILY: ヒラギノ角5-Leaf外字付等幅,"MS Pゴシック"}H2 { FONT-FAMILY: ヒラギノ角5-Leaf外字付等幅,"MS Pゴシック"}.oubun { FONT-FAMILY: Century,Times New Roman,"MS P明朝"}RUBY { WORD-SPACING: -5px}
補足
残ってしまうタグは、<DIV style="MARGIN-LEFT: 1em; TEXT-INDENT: -1em"> や <SPAN style="BACKGROUND: #afafaf"> や <FONT color=red> が残っています。