XPath 中的 Boolean Operators函数

首页 / Xpath入门教程 / XPath 中的 Boolean Operators函数

XPath定义以下与XPath表达式一起使用的布尔运算符。

S.No. Operator & 描述
1

and

满足两个条件

2

or

任何要满足的条件

3

not()

检查条件不满足的功能。

示例

本示例通过遍历每个学生,创建一个<student>元素的表,其属性为rollno,其子元素为<firstname>,<lastname> <nickname>和<marks>。它检查rollno为393或493,然后打印学生详细信息。

students.xml

<?xml version = "1.0"?>
<?xml-stylesheet type = "text/xsl" href = "students.xsl"?>
<class>
   <student rollno = "393">
      <firstname>Dinkar</firstname>
      <lastname>Kad</lastname>
      <nickname>Dinkar</nickname>
      <marks>85</marks>
   </student>
   <student rollno = "493">
      <firstname>Vaneet</firstname>
      <lastname>Gupta</lastname>
      <nickname>Vinni</nickname>
      <marks>95</marks>
   </student>
   <student rollno = "593">
      <firstname>Jasvir</firstname>
      <lastname>Singh</lastname>
      <nickname>Jazz</nickname>
      <marks>90</marks>
   </student>
</class>

students.xsl

<?xml version = "1.0" encoding = "UTF-8"?>
<xsl:stylesheet version = "1.0"
   xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">  

   <xsl:template match = "/">
      <html>
         <body>
            <h2>Students</h2>
				
            <table border = "1">
               <tr bgcolor = "#9acd32">
                  <th>Roll No</th>
                  <th>First Name</th>
                  <th>Last Name</th>
                  <th>Nick Name</th>
                  <th>Marks</th>
               </tr>
					
               <xsl:for-each select = "class/student[(@rollno=393) or ((@rollno=493))]">
					
                  <tr>
                     <td><xsl:value-of select = "@rollno"/></td>
                     <td><xsl:value-of select = "firstname"/></td>
                     <td><xsl:value-of select = "lastname"/></td>
                     <td><xsl:value-of select = "nickname"/></td>
                     <td><xsl:value-of select = "marks"/></td>
                  </tr>
               </xsl:for-each>
            </table>
         </body>
      </html>
   </xsl:template>
</xsl:stylesheet>

验证输出

Formatted Boolean Operator Output

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

苏杰的产品创新课 -〔苏杰〕

Java业务开发常见错误100例 -〔朱晔〕

罗剑锋的C++实战笔记 -〔罗剑锋〕

TensorFlow 2项目进阶实战 -〔彭靖田〕

容量保障核心技术与实战 -〔吴骏龙〕

程序员的测试课 -〔郑晔〕

反爬虫兵法演绎20讲 -〔DS Hunter〕

徐昊 · AI 时代的软件工程 -〔徐昊〕

工程师个人发展指南 -〔李云〕

好记忆不如烂笔头。留下您的足迹吧 :)