【发布时间】:2014-07-17 07:17:16
【问题描述】:
我的HTML字符串是这样的,存储在一个名为sourceCode的变量中
<ul class="yom-list col first" style="width:33.333333333333%">
<li class="first">
<a href="/india/andaman-and-nicobar-islands/">
<span>Andaman and Nicobar Islands</span>
</a>
</li>
<li>
<a href="/india/jammu-and-kashmir/">
<span>Jammu and Kashmir</span>
</a>
</li>
<li class="last">
<a href="/india/andhra-pradesh/">
<span>Andhra Pradesh</span>
</a>
</li>
<li>
<a href="/india/jammu-and-kashmir/">
<span>Jammu and Kashmir</span>
</a>
</li>
</ul>
我想将其转换为通用列表 这样我就可以在我的代码中访问其中的数据,例如 href、name 等。 我已经尝试过这样的事情
foreach (Match match in Regex.Matches(sourceCode, @"<li><a href=""(?<url>[^""])</a></li>"))
items.Add(new Item()
{
name = match.Groups["span"].Value, // i don't know how to get value inside that span
url = match.Groups["url"].Value,
});
但它不起作用,可能正则表达式是错误的。谁能告诉我我做错了什么? 注意:我不能在这个项目中使用 HTMLAgilityPack
【问题讨论】:
-
如果您使用
XHTML,尝试使用 XML Parser 怎么样? -
@rhughes 这只是一个字符串,其中包含 html 标签