• XPATH中text()和string()的使用区别


    <table style="WIDTH: 95.45%; BORDER-COLLAPSE: collapse; EMPTY-CELLS: show; MARGIN-LEFT: 4.55%; MARGIN-TOP: 2pt" cellspacing="0" cellpadding="4">
      <tbody>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Diversified Income Series 
          (Service Class): Maximum long-term total return consistent with reasonable 
          risk. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Emerging Markets Series (Service 
          Class): Long-term capital appreciation. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Limited-Term Diversified Income 
          Series (Service Class): Maximum total return, consistent with reasonable 
          risk. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> REIT Series (Service Class): 
          Maximum long-term total return, with capital appreciation as a secondary 
          objective. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Small Cap Value Series (Service 
          Class): Capital appreciation. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Smid Cap Core Series (Service 
          Class): Long-term capital appreciation. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> U.S. Growth Series (Service 
          Class): Long-term capital appreciation. </td></tr>
      <tr style="PAGE-BREAK-INSIDE: avoid">
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 1.39%; VERTICAL-ALIGN: top; WHITE-SPACE: nowrap; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; PADDING-BOTTOM: 0pt; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 0pt; LINE-HEIGHT: 13pt; PADDING-RIGHT: 2pt"></td>
        <td style="FONT-SIZE: 10pt; TEXT-DECORATION: none; FONT-FAMILY: Arial Narrow; WIDTH: 98.61%; VERTICAL-ALIGN: top; TEXT-TRANSFORM: none; FONT-WEIGHT: normal; COLOR: #000000; PADDING-BOTTOM: 0pt; FONT-STYLE: normal; TEXT-ALIGN: left; PADDING-LEFT: 2pt; LINE-HEIGHT: 13pt">Delaware 
          VIP<sup style="FONT-SIZE: 85%; VERTICAL-ALIGN: text-top; TEXT-TRANSFORM: none; FONT-STYLE: normal"><font style="PADDING-LEFT: 1pt"></font>®</sup> Value Series (Service Class): 
          Long-term capital appreciation. </td></tr></tbody></table>

    在上面的Html表格中,我们要抓出每个tr标签中第2个td的文本内容,一开始想到的XPATH语句是这么写的:

    //td[contains(text(),':') and contains(text(),'(') and contains(text(),')') and (contains(text(),'Class') or contains(text(),'Shares'))]

    结果发现提不出来,将text()函数改为string()函数,就可以提出来了:

    //td[contains(string(),':') and contains(string(),'(') and contains(string(),')') and (contains(string(),'Class') or contains(string(),'Shares'))]

    原文档中有些td标签文本有换行,而且可能还夹杂着其他子标签,这时候可能用text()提取不出来,可以改用string(),string()可以将所有子标签中的文本串成一起提出来,可以满足绝大部分时候的需求。

  • 相关阅读:
    nyoj----522 Interval (简单树状数组)
    HDUOJ-----2838Cow Sorting(组合树状数组)
    HDUOJ---2642Stars(二维树状数组)
    HDUOJ -----Color the ball
    ACM遇到的问题与解决方案
    ELK架构下利用Kafka Group实现Logstash的高可用
    Linux给力的Shell命令
    i18n 语言码和对应的语言库
    jar启动脚本shell
    持续集成和部署工具GOCD
  • 原文地址:https://www.cnblogs.com/JTCLASSROOM/p/11023284.html
Copyright © 2020-2023  润新知