国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 繁峙县| 东丽区| 长兴县| 自治县| 广东省| 郎溪县| 巴青县| 永胜县| 渝北区| 天祝| 苍南县| 搜索| 巧家县| 射阳县| 辽源市| 珲春市| 阜新| 揭东县| 霍林郭勒市| 阿拉善右旗| 西华县| 科技| 漯河市| 淄博市| 乌兰浩特市| 宁夏| 长武县| 三亚市| 河北省| 肇源县| 精河县| 金塔县| 军事| 宜章县| 腾冲县| 奈曼旗| 平塘县| 常宁市| 澄城县| 平泉县| 安岳县|