国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

在.Net 里用XPath的case-insensitive 的查詢

2024-07-10 13:09:21
字體:
供稿:網(wǎng)友

使用xmldocument.selectnodes(string xpath) 是很方便的方法, 可是寫xpath 卻要費點功夫,
今天發(fā)現(xiàn)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節(jié)點值為gen(case-insensitive)的aaa節(jié)點, 如果沒有后面的xpath, 要做到以上查詢, 挺復(fù)雜, 如果會用xpath 的 translate function, 就很容易了

xpath = @"http://root/aaa/bbb/[translate(ccc, 'abcdefghijklmnopqrstuvwxyz', 'abcdefghijklmnopqrstuvwxyz')] = 'gen'/parent::*"
xmlnodelist nodelist = xmldoc.selectnodes(xpath);

xpath的意思是, 把//root/aaa/bbb/ccc節(jié)點的value 全部變成大寫, 然后和'gen'比較, 然后返回aaa節(jié)點.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 饶河县| 寻甸| 昭通市| 胶南市| 新源县| 华蓥市| 苍南县| 西峡县| 安陆市| 东宁县| 锡林郭勒盟| 邵阳市| 昭平县| 琼海市| 广饶县| 安福县| 建德市| 前郭尔| 东源县| 福鼎市| 伽师县| 兴化市| 神农架林区| 广丰县| 遵义县| 赤峰市| 宁海县| 鹿泉市| 阳原县| 康平县| 郸城县| 桃源县| 来宾市| 嘉义县| 拉孜县| 舒城县| 珠海市| 洪雅县| 德阳市| 祁连县| 新竹市|