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

ASP.NET
Visual Studio.Net 内幕(7)
.Net 2.0 原汁原味读取注册表
ASP.NET 2.0中预设的cookie
ASP.NET:一段比较经典的多线程学习代码
ASP.NET2.0服务器控件之自定义状态管理
Asp.net给站点某目录增加Aspnet用户
ASP.NET技巧:请求网址并解析返回的html
在Asp.net用C#建立动态Excel
ASP.NET2.0:页面中链入的CSS、js文件带中文时需注意
ASP.NET技巧:数据岛出到Excel最为简易的方法
第一次用.net2.0 LOGIN登陆控件的困惑和解决方法
在ASP.net中保存/取出图片入/从SQL数据库
ASP.NET技巧:做个DataList可分页的数据源
在.NET中利用委托实现窗体间通信
在.NET2.0中使用自定义事务操作
解决 ASP.NET中目录访问权限的问题
ASP.Net防止刷新自动触发事件的解决方案
白刃之战:PHP vs. ASP.NET(节选)-架构比较
C#中使用SendMessage
提取HTML代码中文字的C#函数

ASP.NET 中的 XPath序列之四


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 124 ::
收藏到网摘: 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-----------------------------------