• xpath


    属性的值可以被用来作为选择的准则, normalize-space函数删除了前部和尾部的空格, 并且把连续的空格串替换为一个单一的空格
     
    //BBB[@id='b1']
    选择含有属性id且其值为'b1'的BBB元素

         <AAA>
              <BBB id = "b1"/>
              <BBB name = " bbb "/>
              <BBB name = "bbb"/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //BBB[@name='bbb']
    选择含有属性name且其值为'bbb'的BBB元素

         <AAA>
              <BBB id = "b1"/>
              <BBB name = " bbb "/>
              <BBB name = "bbb"/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //BBB[normalize-space(@name)='bbb']
    选择含有属性name且其值(在用normalize-space函数去掉前后空格后)为'bbb'的BBB元素

         <AAA>
              <BBB id = "b1"/>
              <BBB name = " bbb "/>
              <BBB name = "bbb"/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)

    count()函数可以计数所选元素的个数
     
    //*[count(BBB)=2]
    选择含有2个BBB子元素的元素

         <AAA>
              <CCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </CCC>
              <DDD>
                   <BBB/>
                   <BBB/>
              </DDD>
              <EEE>
                   <CCC/>
                   <DDD/>
              </EEE>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[count(*)=2]
    选择含有2个子元素的元素

         <AAA>
              <CCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </CCC>
              <DDD>
                   <BBB/>
                   <BBB/>
              </DDD>
              <EEE>
                   <CCC/>
                   <DDD/>
              </EEE>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[count(*)=3]
    选择含有3个子元素的元素

         <AAA>
              <CCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </CCC>
              <DDD>
                   <BBB/>
                   <BBB/>
              </DDD>
              <EEE>
                   <CCC/>
                   <DDD/>
              </EEE>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)

    name()函数返回元素的名称, start-with()函数在该函数的第一个参数字符串是以第二个参数字符开始的情况返回true, contains()函数当其第一个字符串参数包含有第二个字符串参数时返回true.
     
    //*[name()='BBB']
    选择所有名称为BBB的元素(这里等价于//BBB)

         <AAA>
              <BCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </BCC>
              <DDB>
                   <BBB/>
                   <BBB/>
              </DDB>
              <BEC>
                   <CCC/>
                   <DBD/>
              </BEC>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[starts-with(name(),'B')]
    选择所有名称以"B"起始的元素

         <AAA>
              <BCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </BCC>
              <DDB>
                   <BBB/>
                   <BBB/>
              </DDB>
              <BEC>
                   <CCC/>
                   <DBD/>
              </BEC>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[contains(name(),'C')]
    选择所有名称包含"C"的元素

         <AAA>
              <BCC>
                   <BBB/>
                   <BBB/>
                   <BBB/>
              </BCC>
              <DDB>
                   <BBB/>
                   <BBB/>
              </DDB>
              <BEC>
                   <CCC/>
                   <DBD/>
              </BEC>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)

    string-length函数返回字符串的字符数,你应该用&lt;替代<, 用&gt;代替>
     
    //*[string-length(name()) = 3]
    选择名字长度为3的元素

         <AAA>
              <Q/>
              <SSSS/>
              <BB/>
              <CCC/>
              <DDDDDDDD/>
              <EEEE/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[string-length(name()) < 3]
    选择名字长度小于3的元素

         <AAA>
              <Q/>
              <SSSS/>
              <BB/>
              <CCC/>
              <DDDDDDDD/>
              <EEEE/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
     
    //*[string-length(name()) > 3]
    选择名字长度大于3的元素

         <AAA>
              <Q/>
              <SSSS/>
              <BB/>
              <CCC/>
              <DDDDDDDD/>
              <EEEE/>
         </AAA>
    在XLab中打开实例 | 树视图 (JPG)
  • 相关阅读:
    How many ways
    HDOj-1016 Prime Ring Problem
    DHU-1241 Oil Deposits
    Red and Black
    HDU-3790 最短路径问题
    vim/Gvim配置
    lintcode431- Connected Component in Undirected Graph- medium
    lintcode120- Word Ladder- medium
    lintcode531- Six Degrees- medium- microsoft
    lintcode624- Remove Substrings- medium
  • 原文地址:https://www.cnblogs.com/cxd4321/p/903845.html
Copyright © 2020-2023  润新知