0

我需要获取 XML 的值:

<usr_clan_id>123</usr_clan_id>

我需要得到 123,它的例子。我会尝试使用:

Match match = Regex.Match(input, @"<usr_clan_id>([0-9])</usr_clan_id>$",
RegexOptions.IgnoreCase);

但这很糟糕:/

4

3 回答 3

2
var doc = XDocument.Parse(xmlstring);
var value = doc.XPathSelectElement("//usr_clan_id").Value;
于 2012-11-13T19:34:56.790 回答
2

最简单的解决方案

XDocument xdoc = XDocument.Parse(@"<usr_clan_id>123</usr_clan_id>");
int id = (int)xdoc.Element("usr_clan_id");
于 2012-11-13T19:35:06.787 回答
0

如果您得到一个巨大的 XML 文件,请使用解析器并按照注释中的建议使用 XPath 获取值。如果您只获得问题中包含的简短 XML 字符串,那么我认为 RegEx 非常好。

关于正则表达式:您只匹配一位数字。而是使用+which 匹配一个或多个数字。

@"<usr_clan_id>([0-9]+)</usr_clan_id>$"
于 2012-11-13T19:36:07.277 回答