我的xml文件包含元素MO:
<MO name="xxxx-1000"/>
我可以通过以下方式找到MO中属性“name”的值:
string searchString;
doc.Root.Elements(ns + "MO").Where(x => x.Attribute("name").Value.Contains(searchString)
但是如果searchString = 1或10或100,它也会找到1000.它不应该找到任何我想要的输出。
在这种情况下如何找到完全匹配?
答案 0 :(得分:0)
如果您只想查找完全匹配,-
是否始终是分隔符?
然后你可以使用:
var query = doc.Root.Elements(ns + "MO")
.Where(x => x.Attribute("name").Value.Split('-').Last() == searchString);
当然你可以改进它并不总是一个数字(f.e。... .Equals(searchString, StringComparison.CurrentCultureIgnoreCase)
)。