鉴于此XML,如何重新检索HEX颜色?
<group>
<span style="color:#DF0000; font-style: italic; font-weight: bold">Webmaster</span>
</group>
我需要检索样式中的所有内容。然后我可以使用String.Substring方法和.IndexOf()来检索我使用的颜色。
感谢您的帮助。
任何人都很好奇这是我最终的结果:
XElement str = doc.XPathSelectElement("/ipb/profile/group");
string color = str.Element("span").Attribute("style").Value;
color = color.Substring(color.IndexOf('#'), 7);
return color;
答案 0 :(得分:2)
您可以使用LINQ-to-XML:
var elem = XElement.Parse(str);
var attr = elem.Element("span").Attribute("style").Value;
请注意,如果您的HTML格式不完整,则应考虑改为使用HTML Agility Pack。
答案 1 :(得分:0)
我不确定文档的其余部分是什么样的,但希望这可以指出正确的方向。
var node = xdoc.Descendants("group").Descendants("span").FirstOrDefault();
string style = node.Attribute("style").Value;
string[] styleElements = style.Split(';');
var colorElements = from x in styleElements
where x.StartsWith("color", StringComparison.InvariantCultureIgnoreCase)
select x;
string colorElement = (string)colorElements.FirstOrDefault();