【发布时间】:2013-11-25 08:39:21
【问题描述】:
我正在使用 C# 并且有一些字符串数据如下:
我已将其拆分为一个数组,以便我可以逐行查看上述每个项目。当逐行查看此代码时,我可以帮助获取每个 th 和 /th 标记之间包含的内容吗?
【问题讨论】:
-
这里有大量的正则表达式答案......
-
如果它是带有标题的完整 xml 文档的一部分,我会使用 Linq to Xml。
我正在使用 C# 并且有一些字符串数据如下:
我已将其拆分为一个数组,以便我可以逐行查看上述每个项目。当逐行查看此代码时,我可以帮助获取每个 th 和 /th 标记之间包含的内容吗?
【问题讨论】:
你可以通过几种方式做到这一点。
如果您的数据已经在 <thead> 中,则将其加载到 XDocument 中。
var document = XDocument.Parse(data);
var headings = document.Element("thead").Elements().Select(x => x.Value);
或者将它们包装在一个元素中并加载它们。
var document = XDocument.Parse(string.Format(@"<thead>{0}</thead>", data));
var headings = document.Element("thead").Elements().Select(x => x.Value);
否则将<th> 和</th> 拆分为string.Split。
如果列表中有每一行:
var headings = items.Select(x => x.Replace("<th>", "").Replace("</th>", ""));
【讨论】:
最简单和最简单的方法:
var result = yourString.Split(new string[] { "<th>", "</th>" },
StringSplitOptions.RemoveEmptyEntries);
更好的方法是通过库来解析它,例如 HtmlAgilityPack。
【讨论】: