使用堆栈 C# 确认文件中的有效 HTML 标记
Posted
技术标签:
【中文标题】使用堆栈 C# 确认文件中的有效 HTML 标记【英文标题】:Confirming valid HTML tags in file using a stack C# 【发布时间】:2018-06-06 11:06:04 【问题描述】:我需要阅读html
文件并确认所有HTML
标记都已使用Stack
正确关闭。我现在无法阅读文件并找到每个标签。我不确定我应该如何进行。我应该阅读文件的每一行,使用正则表达式查找标签,然后添加到堆栈中......还是有更好的方法来做到这一点?
【问题讨论】:
【参考方案1】:您尝试使用的每个手工解决方案都将成为一场噩梦。我真的建议您使用可以正确处理HTML
的外部库。有了HTML Agility Pack,这个任务就成了笑话:
// your string variable containing HTML
String html = ...
HtmlDocument document = new HtmlDocument();
document.LoadHtml(html);
foreach (HtmlParseError error in document.ParseErrors)
Console.WriteLine("ERROR: " + error.Code.ToString());
Console.WriteLine(error.Reason);
Console.WriteLine();
【讨论】:
如果我是正确的,那 for 循环只是检查错误?我错了吗?另外这段代码只是加载html文档,对吗? 你是绝对正确的。您加载文档(或包含 HTML 的字符串),然后打印最终发现的错误。也可能没有,在这种情况下不会显示任何消息。 遗憾的是我不得不使用堆栈来确认是否有任何错误。不过,这看起来确实很方便。是否可以使用堆栈来完成这项工作? 在这种情况下我仍然需要了解堆栈是什么。 堆栈是遵循“先进后出”经验法则的对象集合。 msdn.microsoft.com/en-us/library/…以上是关于使用堆栈 C# 确认文件中的有效 HTML 标记的主要内容,如果未能解决你的问题,请参考以下文章