繁体   English   中英

如果标签仅包含空格,如何删除 html 标签中的空格? 使用 HTMLAgility C#

[英]How can I remove the spaces in html tags if tags only contain whitespace? using HTMLAgility C#

 <p style="text-align:right;margin-bottom:0pt;margin-top:0pt;text-indent:0%;font-family:Times New Roman;font-size:11pt;"> </p>

这里可以看到 p 标签里面的空格,想从整个 html 文档中去掉这个空格。 我正在使用 HTMLAgility 包来删除几个 HTML 字符。 不知道我应该如何删除这个空格。

一个如何做到这一点的例子,搜索所有只有空格作为其内部文本值的段落元素,用空段落替换这些段落元素。

            var doc = new HtmlDocument();
            doc.LoadHtml(
@"<body>
    <p>      </p>
    <span>My span text ! </span>
    <p> </p>
</body>");

            //Using HtmlAgilityPack.CssSelectors.NetCore
            var ps = doc.QuerySelectorAll("p").Where(p => p.InnerText.ToCharArray().All(c => char.IsWhiteSpace(c)));

            for(var i = 0; i < ps.Count(); i++)
            {
                var p = ps.ElementAt(i);
                var newP = HtmlNode.CreateNode("<p></p>");
                p.ParentNode.ReplaceChild(newP, p);
            }

            doc.Save("demo.html");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM