使用XmlDocument.SelectNodes(String xpath) 是很方便的方法, 可是写XPath 却要费点功夫,
Функция XPath1.0 без учета регистра 的 所以很难做下面的查询
<root>
<ААА>
<ВВВ>
<CCC>ддд</CCC>
<ВВВ>
<CCC> GEN</CCC> //也可能是Gen, Gen, GEN
</БББ>
</ААА>
<ААА>
<ВВВ>
<CCC>DFE</CCC>
<ВВВ>
<CCC> Генерал</CCC>
</БББ>
</ААА
</root>
查找所有的CCC节点值为GEN(без учета регистра)的AAA节点, 如果没有后面的Xpath, 要做到以上查询, 挺复杂, 如果会用Xpath 的 функция перевода, 就很容易了
xpath = @"//root/AAA/BBB/[translate(CCC, 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')] = 'GEN'/parent::*"
Список узлов XmlNodeList = xmlDoc.SelectNodes(xpath);
xpath-файл, 把//root/AAA/BBB/CCC-значение 全部变成大写, 然后和'GEN'-比较, 然后返回AAA-файл.
http://www.cnblogs.com/happyy2k/archive/2006/10/31/545128.html