HTMLの空タグの削除
top-bnr

HTMLの空タグの削除

   2015/08/04

前回タグの閉じ忘れチェックを行いました。

これだけではエラー無くアップロードすることは出来ますが、

まだ無駄な記述を省くことはできません。

それは、<p></p>、<td></td>のような中身の無い空タグのことです。


空タグはseo対策としてもマイナス評価になるので省いておきたいですし、

楽天スマートフォン用の商品説明は、PC用の商品説明の半分のバイト数しか表現できないため

出来るだけ無駄なコードは省いておきたいものです。


簡単なコードになりますが、HTML全体に対して空タグを除去するサンプルは以下のとおりです。

C#のコードになります。

public static string DeleteBlankTag(string HTML)
        {
            HTML = HTML.Replace("></", "></");
            while (true)
            {
                int BlankPoint = HTML.IndexOf("></");

                if (BlankPoint > -1)
                {
                    string HTMLTag1 = HTML.Substring(0, BlankPoint);
                    string HTMLTag2 = HTML.Substring(BlankPoint + 3);

                    HTMLTag1 = HTMLTag1.Substring(HTMLTag1.LastIndexOf("<") + 1);
                    HTMLTag2 = HTMLTag2.Substring(0, HTMLTag2.IndexOf(">"));

                    if (HTMLTag1.IndexOf("/") == -1 && HTMLTag1 == HTMLTag2)
                    {
                        HTML = HTML.Replace("<" + HTMLTag1 + "></" + HTMLTag2 + ">", "");
                    }
                    else
                    {
                        HTML = HTML.Replace("<" + HTMLTag1 + "></" + HTMLTag2 + ">", "<" + HTMLTag1 + "></" + HTMLTag2 + ">");
                    }
                }
                else
                {
                    break;
                }
            }
            return HTML.Replace("></", "></");
        }

要は<tr></tr>のような中身の無い文字列を見つけたら、問答無用で空にしてしまえというコードです。

小さなことかも知れませんが、SEO対策としても、文字数対策としても有効なので

試してみて価値はあると思います。

bottom-bnr
  • ブログランキング・にほんブログ村へ
  • FC2ブログランキングへ
  • 人気ブログランキングへ
  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る