设为首页 友情链接
在线留言 发表文章
加入收藏 广告联系

刺猬首页

| 专案技术 | 网络技术 | 图形图象 | 网络编程 | 网页设计 | 操作系统 | 服务器 | 技术白皮书 | 在线实验室 | 刺猬论坛 |
  | 数据库 | 设计赏析 | 存储频道 | 网络安全 | 私服架设 |  Solaris | 网站评估 | PC维护技巧 | 下载中心 | 博 客 |
专题: | Linux | java | cisco | 防病毒 | 刀片 | SOA | iscsi | ASP.NET | SQL | Oracle |
您现在的位置: IT公社 IT community >> 网络编程 >> ASP.NET >> 教程正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
Ajax程序中,自己实现页面…
使用C#开发SmartPhone程…
ASP.NET技巧:下载文件关…
ActiveReports for .NET…
ASP.NET技巧:远程抓取G…
ASP.NET2.0应用的全球化…
ASP.NET技巧:用GZip压缩…
ajax和asp.net的配置文件
ASP.NET技巧:存储过程的…
ASP.NET技巧:dot net h…
  在.Net 里用XPath的case-insensitive 的查询           
在.Net 里用XPath的case-insensitive 的查询
 

使用XmlDocument.SelectNodes(String xpath) 是很方便的方法, 可是写XPath 却要费点功夫,
今天发现XPath1.0里没有 case-insensitive 的 function 所以很难做下面的查询

<root>
   <AAA>
         <BBB>
               <CCC>ddd</CCC>
         <BBB>
            <CCC> GEN</CCC> //也可能是Gen, gen, GEn
         </BBB>
   </AAA>
   <AAA>
         <BBB>
               <CCC>DFE</CCC>
         <BBB>
            <CCC> Gen</CCC>
         </BBB>
   </AAA
</root>

查找所有的CCC节点值为GEN(case-insensitive)的AAA节点, 如果没有后面的Xpath, 要做到以上查询, 挺复杂, 如果会用Xpath 的 translate function, 就很容易了

xpath = @"//root/AAA/BBB/[translate(CCC, 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')] = 'GEN'/parent::*"
XmlNodeList nodelist = xmlDoc.SelectNodes(xpath);

xpath的意思是, 把//root/AAA/BBB/CCC节点的value 全部变成大写, 然后和'GEN'比较, 然后返回AAA节点.

频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。

原始作者:佚名 录入时间:2006-11-22
信息来源:不详 投稿信箱:itqoo@126.com
教程录入:admin    责任编辑:admin 
  • 上一个教程:

  • 下一个教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    - 关于我们 - 合作伙伴 - 友情链接 - 广告刊登 - 投稿热线 - 在线留言版权声明联系方式 -
    IT公社版权所有 粤ICP备05127012号
    Copyrigh@2005-2006 itqoo.com.Inc All Rights Reserved  推荐分辨率 1024*768
    联系站长:E-Mail:itqoo@126.com     MSN:urchincc@hotmail.com    QQ:点击这里给我发消息
    特别感谢:亿太网络提供空间支持