当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > XPath序列之四

ASP.NET
Java、C#泛型的一些个人看法
用JScript.net写.net应用程序
.Net Remoting实现定向广播
ASP.NET 与 Ajax 的实现方式
在.NET环境下绘制模糊数学中隶属函数分布图
.Net UCS2 加码最简单的方法
在VS2005中创建并使用MasterPage
无废话C#设计模式之十三:Decorator
用 C# 编程实现读写Binary
无废话C#设计模式之十二:Bridge
无废话C#设计模式之十一:Composite
ASP.NET连接Access和SQL Server数据库
.NET和J2EE该相互学习什么
ASP.NET 2.0功能扩展:跨页提交
巧用escape解决ASP.NET中URL传参乱码问题
理解ASP.NET中的三层结构
解读ADO.NET2.0的十大最新特性
ASP.NET教程:抽象工厂模式
ASP.NET教程:抽象类和接口的比较
C#实现USB接口的程序代码

ASP.NET 中的 XPath序列之四


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 133 ::
收藏到网摘: n/a

1.3.4 基本表达式除了定位路径表达式外,还有许多其它的基本表达式结构包括布尔、等式、关系和数值表达式。这些表达式可以用于结果对象不需要时节点集的任何情况中。它们通常用于XPath谓词和各种XSLT结构中。XPath支持标准的and/or布尔表达式,表达式的每个操作数强制转换为布尔值后求值。等式表达式测试两个对象是否相等,其操作符有 = 和 != 。关系表达式是的两个对象之间的关系比较成为可能,其操作符为<=、<、>=和>。关系表达式的求值是通过将两个操作数转换为数值后进行比较求得的。以下这段话定义了等式表达式和关系表达式中结果对象的比较方法:如果被比较的两个对象是节点集合,那么,其比较结果为真当且仅当在两个节点集合中各有一个节点,并且,比较这两个节点的字串值的结果为真。如果被比较的一个对象是节点集合而另一个是数值,其比较结果为真当且仅当在节点集合中有一节点,并且,用函数number将该节点的字串值转换为数值与被比较的数值相同。如果被比较的一个对象是节点集合而另一个是字符串,其比较结果为真当且仅当在节点集合中有一节点,并且该节点的字串值与另一个的字符串相等。如果被比较的一个对象是节点集合而另一个是布尔类型,其比较结果为真当且仅当在节点集合中有一节点,并且,用函数 boolean 将该节点转换成的布尔类型与被比较的布尔类型相等。当两个被比较的对象都不是节点集合,而且,操作符为 = 或 !=,那么,比较这类对象时,按以下方式将它们转换成常见类型然后再比较。如果被比较的对象中至少有一个是布尔类型,那么,每一个被比较的对象都要转换成布尔类型,就像调用了boolean 函数一样。不然的话,如果至少有一个是数字,那么,每一个被比较的对象都要转换成数字,就像调用了number 函数一样。再不然的话,两个对象都转换成字符串,就像调用了string 函数一样。 = 的比较为真,当且仅当在对象是相等的;!= 的比较为真,当且仅当在对象是不相等的。数字相等的比较依照IEEE 754标准。两个布尔类型相等,当且仅当它们都为真或都为假。两个字符串相等,当且仅当它们都由同样序列的 UCS 字符组成。当两个被比较的对象都不是节点集合,而且,操作符为 <=,<,>= 或 >,那么,要比较的对象都转换成数字并依照IEEE 754进行比较。< 的比较为真,当且仅当第一个数小于第二个数。>的比较为真,当且仅当第一个数大于第二个数。>=的比较为真,当且仅当第一个数大于或等于第二个数。数值表达式是的实现基本数学操作成为可能,可以使用的操作符有:+、-、div、mod、*、-(一元操作符)。其计算是在每个操作数转换为数值后进行求值。 -----------------------------to be continued-----------------------------------