会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
海阔天空
博客园
首页
新随笔
联系
订阅
管理
C#中忽略大小写在XML中查询
/**/
///
<summary>
///
不分大小写查询XML节点,简单写了一下,不知道效率怎么样。
///
从MSDN是摘了点代码,呵呵。
///
</summary>
static
void
CompareXmlIgnoreCase()
{
string
xml
=
"
<root><item1 type='a'>First</item1><ITEM2 type='A'>Second</ITEM2><ITEM1 type='A'>SECOND</ITEM1></root>
"
;
XmlDocument _doc
=
new
XmlDocument();
_doc.LoadXml(xml);
//
按名称查询
XmlNodeList l
=
_doc.DocumentElement.SelectNodes(
"
//root/node()[translate(local-name(), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'item1']
"
);
for
(
int
i
=
0
; i
<
l.Count; i
++
)
{
Console.WriteLine(l[i].OuterXml);
}
Console.WriteLine(
"
===================================================
"
);
//
按某个属性比较查询
l
=
_doc.DocumentElement.SelectNodes(
"
//root/node()[translate(@type, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'a']
"
);
for
(
int
i
=
0
; i
<
l.Count; i
++
)
{
Console.WriteLine(l[i].OuterXml);
}
Console.WriteLine(
"
===================================================
"
);
//
按InnerText比较查询
l
=
_doc.DocumentElement.SelectNodes(
"
//root/node()[translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'second']
"
);
for
(
int
i
=
0
; i
<
l.Count; i
++
)
{
Console.WriteLine(l[i].OuterXml);
}
}
posted @
2007-01-29 13:06
海阔天空
阅读(
2851
) 评论(
7
)
编辑
收藏
举报
刷新页面
返回顶部
公告