C# 将字符串与存储在多个元素上的值的XML匹配

C# 将字符串与存储在多个元素上的值的XML匹配,c#,xml,linq,C#,Xml,Linq,我想知道某个字符串在XML文件中是否匹配 例如: string test="New York, USA"; 在以这种方式格式化的XML文件中: <?xml version="1.0"?> <line> <word>New</word> <word>York,</word> <word>USA</word> </line>

我想知道某个字符串在XML文件中是否匹配

例如:

string test="New York, USA";
在以这种方式格式化的XML文件中:

<?xml version="1.0"?>
<line>
    <word>New</word>
    <word>York,</word>
    <word>USA</word>
</line>

新的
约克,
美国
所以每个单词可能在不同的元素中,也可能不在不同的元素中

最简单的方法是什么?
我曾考虑在保存部分结果时分别匹配每个单词,但在我看来,必须有更简单的方法。

如果要逐字比较,可以使用两个字符串列表进行比较。 使用下面的方法,您可以将xml添加到列表中

List<string> list = doc.Root.Descendants("line").Descendants()
                    .Select(element => element.Value)
                    .ToList();

希望这能对您有所帮助。

解析XML,填充
列表中的所有值,使用
。连接
来连接元素并与
测试
进行比较。您将如何处理空间?如果字符串跨越多个包含其自身“word”元素的“行”元素,该怎么办?如果我想访问包含字符串一部分的第一个“word”元素的属性呢?
string words = "New York, USA";
List<string> result = words.Split(' ').ToList();
 var matcheditems = list.Intersect(result);