C#:XPath选择包含子字符串属性的节点?

时间:2009-11-23 09:14:48

标签: c# asp.net xpath c#-2.0

我可以使用XPath选择代码中包含UK的国家/地区节点吗?

<country-list>
  <Country code="TW,UK,MY" />
  <Country code="US,CA,MX" />
  <Country code="IN,PR,VI,IR" />
  <Country code="Others" /> 
</country-list>

感谢。

4 个答案:

答案 0 :(得分:13)

尝试使用contains() XPath函数。

类似的东西:

/Country[fn:contains(@code, "UK")]

快速Google搜索会显示有关XPath功能的详细信息: http://www.w3schools.com/xpath/xpath_functions.asp

答案 1 :(得分:2)

你需要这样写:

/country-list/Country[contains(@code,'UK')]

答案 2 :(得分:1)

您可以将Linq用于XML - 就像一个想法

这样的事情:

var countryElement = from country in countryElement.GetAttribute("code")
  where country.Value.Contains("UK")
  select countryElement;

答案 3 :(得分:0)

是的,做点什么

//Country[contains(@code, 'UK')]

选择了第一个Country元素