XSL函数一

xsl标签函数 http://www.w3school.com.cn/xml/xml_validator.asp --xslt,xml方法 http://www.w3school.com.cn/xsl/xsl_w3celementref.asp 一、 XML验证器 字符串转换成数字格式 <PremAmt><xsl:value-of select='format-number($vTot... 阅读详情

XSL函数一


  本期学习XSL样式方法,即可用于XSL元素< xsl:for-each >、< xsl:value-of >、< xsl:template >的select属性、< xsl:apply-templates >的match属性、< xsl:if >、< xsl:when >的test属性中,对元素的范围进行筛选,从而提供更大的灵活性。


  XML与DHTML(动态HTML)一样,这些节点都是一个个对象,而且这些对象都是有层次的,从根节点开始构成一颗层次清淅的树状结构,这就形成了文档对象模型DOM,通过对象的属性、方法来达到访问控制XML节点的目的。


  我们这里不打算就XML的DOM逐一详细阐述,因为这完全可以写成一个篇幅较多的教程,我们先就一些常见的方法作一些讨论,以期对DOM的对象方法有一个大致的了解。

  注:从本期开始,所有示例不再提供完整源代码,如有不明白之处,请仔细阅读前面七期、并动手练手。

一、end()

含义:返回集合中最后一个元素。

示例:输出最后一份简历

假定XML文件格式为:

……< resume >…< /resume >……< resume >…< /resume >……

相应XSL文件内容为:

< xsl:for-each select="resume[end()]" >……< /xsl:for-each >

或

< xsl:templates match="resume[end()]" >……< /xsl:templates >

或

< xsl:apply-template select="resume[end()]" >……< /xsl:apply-template >

二、index()

含义:返回该元素在集合中的位置,返回值是一整数,其中第一个元素返回0

示例:返回前面三份简历

resume[index() $le$ 3]

注意:index()是与父元素相关的,请看下例:

< x >

< y/ >

< y/ >

< /x >

< x >

< y/ >

< y/ >

< /x >

返回所有< x >中的第一个< y >

x/y[index()=0] 或x/y[0]

三、nodeName()

含义:返回元素的名字,即标记名

示例:选择任意元素,假如其名字(即标记名)等于“name”

*[nodeName()="name"] 或 *[name]


四、number()

含义:将值转换为数值形式,如果不是数值则返回空,要求参数

示例:年龄(age) ?0岁的人的简历(resume)

resume[number(age) $lt$ 30] 或resume[age $lt$ 30]

五、nodeType()

含义:返回结点类型,结果为是数值。以下是返回值列表:

结点类型
 结点类型值 结点的字符形式描述
 
Element
 1
 "element"
 
Element Attribute
 2
 "attribute"
 
Markup-Delimited Region of Text
 3
 "text"
 
Processing Instruction
 7
 "processing_instruction"
 
Comment
 8
 "comment"
 
Document Entity
 9
 "document"
 


六、value()

含义:返回元素或属性的值

示例:value()是元素或属性的缺省方法,以下表示是等价

name!value()="NAME"与name="NAME"

@attr="attribute_value"与@attr="attribute_value"

注:@是属性前缀,@attr表示是属性attr


七、attribute()

含义:返回所有属性结点的集合,等价于“@*”

示例:寻找所有的resume元素,满足条件至少有一个属性的值为“ABC”

resume[$any$ attribute()="ABC"]或resume[$any$ @*="ABC"]

寻找所有的resume元素,满足条件至少有一个子元素有一个属性的值为“ABC”

resume[$any$ */attribute()="ABC"]或resume[$any$ */@*="ABC"]


八、comment()

含义:返回所有注释结点

示例:例如

resume[$any$ comment()="禹希初的简历"]

表示寻找含有注释语句

< !--禹希初的简历-- >

的元素< resume >


九、cdata()

含义:返回所有CDATA类型的结点的集合

示例:例如

resume[$any$ cdata()="禹希初的简历"]

表示寻找含有下述语句(必须是直接子结点)

< ![CDATA[禹希初的简历]] >

的元素< resume >


十、node()

含义:返回当前上下文环境中除根结点和属性结点以外的所有结点的集合,等价于

“* | pi() | comment() | text()”

示例:寻找所有元素resume,其最后一个结点的名字为"skill"

resume[node()[end()]!nodeName()="skill"]

寻找所有resume元素的第一个结点:resume/node()[0]


十一、textnode()

含义:返回所有文本类型的结点的集合

示例:寻找每一个p元素的第二个文本结点

p/textnode(1)或p!textnode(1)

十二、text()

含义:返回所有表示文本字符串的结点的集合,等价于"cdata()|textnode()";

  本期的内容就介绍至此,另有一个函数date()在本人的机器上一试就发生错误使浏览器自动关闭,还有一个函数pi()本人尚未找到适当的应用方法,就不介绍了,下期将讲述如何XSL中使用脚本。

XSL 语法简介(一) XSL语法介绍首先注意到的是,XSL文件本身即是一份 XML文件,所以在XSL文件的开头,一样有和XML文件相同的声明。W3C这个XML的标准机构为XSL定义了很多标记(元素),XSL文件就是这些标记和HTML标记的组合。在XSL文件中,必须有如下一行的代码:    <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">   这里,xsl: 阅读详情

相关推荐

XSL 语言

XSL是一种强大的工具,用于处理和呈现XML数据。XSLT用于将XML文档转换为其他格式,XPath用于在XML文档中定位元素,而XSL-FO用于格式化XML数据。了解和掌握XSL的这三个部分,将有助于更好地处理和呈现XML数据。

lsx202406的博客 1098

XSL函数二----DOM中对象的方法

XSL函数二----DOM中对象的方法   本期介绍多个XSL对于VBScript、JScript增加的方法、属性,以充分发挥XML的优势,用于、标记内表达式的编写或、的expr属性。 一、absoluteChildNumber 含义:返回结点相对于它所有的兄弟(不论名字是否相同)的序号语法:absoluteChildNumber(node)参数:node ── 对象,欲返

itbook的专栏 1020

别再问ARM麒麟怎么装微信了!手把手教你用铠大师搞定Windows软件(飞腾/海思芯片实测)

本文详细介绍了如何在ARM架构的信创电脑(如飞腾/海思芯片)上使用铠大师安装和运行Windows软件,解决微信、Office等常用软件的兼容性问题。通过实测数据对比,铠大师在性能和易用性上显著优于传统方案,为麒麟系统用户提供了一套完整的解决方案。

weixin_28736355的博客 903

xsl 函数大全

XSLTsuppliesanumberoffunctions. -------------------------------------------------------------------------------- XSLTFunctionsNameDescriptioncurrent()Returnsthecurrentnodedocument()Usedtoacc...

wuyisky 683

Python自动化测试全套教程-第一天(python、pycharm开发环境的安装与配置(图文超级详细);附安装包)

本文介绍了Python开发环境的完整安装配置流程。主要内容包括:1) Python解释器的下载安装与版本检测方法;2) PyCharm IDE的下载安装步骤,包括专业版和社区版的选择;3) PyCharm的基础配置和项目创建方法;4) 开发环境的基本构造说明。文章提供了两种获取安装包的方式(官网下载和文章附件),并详细说明了解释器卸载、安装过程中的注意事项,以及如何验证环境配置成功。特别强调了PyCharm安装时的路径选择和虚拟环境的创建方法,为Python初学者提供了完整的开发环境搭建指南。

kiwi_king的博客 2035

Codex CLI 接入智谱 GLM-5.1 完整教程

Codex CLI 是 OpenAI 推出的命令行 AI 编程工具,支持自主读取文件、执行命令、编写代码等操作,是目前最火的终端 AI 编程工具之一。通过 CLIProxyAPI 代理,我们成功将 Codex CLI 与智谱 GLM-5.1 模型对接,核心在于解决 Responses API 与 Chat Completions API 的协议转换问题。✅成熟稳定:CLIProxyAPI 社区活跃(4.7k fork),持续维护✅完整兼容:支持流式/非流式、function calling✅低成本。

u011831527的博客 2580

xslt 中常用的函数集合

最近在项目中都是通过XSLT来传换的,网上搜集了一下常用的函数,整合一下自己常用到的。 1、xslt数值的函数: (1)fn:number(arg)   返回参数的数值。参数可以是布尔值、字符串或节点集。      示例:&lt;xsl:value-of select="number('100')"/&gt; 返回 100 (2)fn:abs(num) 返回参数的绝对值。  ...

wangpingjing的博客 2079

植物GO注释

本文主要是对没有GO term库的植物进行注释。 1、选用AgriGo 进行注释,在agriGO中点击species后,查看与你目标物种相近的物种作为库 2、比如我以甜菜为例 为了找到和GO term对应的ID,先找到PLAZA,进入网站https://bioinformatics.psb.ugent.be/plaza/versions/plaza_v3_di...

weixin_30300225的博客 2229

xsl

http://www.blogjava.net/rickhunter/articles/59742.html http://www.blueidea.com/tech/web/2004/1798_4.asp  本期介绍多个XSL对于VBScript、JScript增加的方法、属性,以充分发挥XML的优势,用于&lt;xsl:script&gt;、&lt;xsl:...

繁华向左,寂寞向右--永远的船长 241

Python代码加密与发布方案详解

本文详细介绍了多种Python代码保护方案,从基础加密到高级混淆,以及商业化发布的最佳实践。基础加密方案包括编译为字节码和使用PyArmor基础加密,适合临时保护和小项目。商业级加密方案如Cython编译和Nuitka完整打包,提供更高的保护强度和执行效率。高级混淆方案涉及控制流混淆、字符串加密和完整混淆工具链,进一步增加逆向难度。商业化发布方案则强调许可证系统集成、硬件绑定保护和完整发布流程。此外,文章还探讨了反逆向技术、最佳实践建议和常见问题解决方法。通过组合使用这些技术,可以构建出适合不同安全需求的P

数据知道的博客 1万+

【华为OD机试真题 2025C卷】895、贪心歌手 | 机试真题+思路参考+代码解析 (C++、Java、Py、C语言、JS)

【华为OD机试真题 2025C卷】895、贪心歌手 | 机试真题+思路参考+代码解析 (C++、Java、Py、C语言、JS) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2025华为od,如何备战华

KJ.JK 964

xsl函数一

本期学习XSL样式方法,即可用于XSL元素、、的select属性、的match属性、、的test属性中,对元素的范围进行筛选,从而提供更大的灵活性。  XML与DHTML(动态HTML)一样,这些节点都是一个个对象,而且这些对象都是有层次的,从根节点开始构成一颗层次清淅的树状结构,这就形成了文档对象模型DOM(Document Object Model),通过对象的属性、方法来达到访问控制XM

tony508的专栏 451

【智能座舱】- 智能座舱研究报告合集

智能座舱研究报告合集

零点壹客的博客 1305

跟我学XSL(7)XSL函数一

<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"

zgqtxwd的专栏 287

【AI黑话日日新】什么是AI云原生?

云原生赋能AI:利用容器、微服务、Serverless、DevOps等云原生技术,解决AI应用(尤其是大模型)在部署、扩展、运维、成本控制方面的痛点,让AI服务具备高可用、高性能、易运维、易扩展的特性AI赋能云原生:将AI技术(如智能调度、异常检测、自动优化)融入云基础设施管理,使云平台具备自我感知、自我优化、自我修复的能力,从"被动响应"升级为"主动适配"其本质是实现从""(AI运行在云上)到""(为AI量身打造的云)的根本性转变。

专注:太空算力、AI infra、异构调度、大模型成本工程 628

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

微服务架构实践:从狂热到理性的演进之路

微服务架构作为分布式系统的重要实现方式,通过将应用拆分为小型独立服务来提高可扩展性和开发效率。其核心原理是围绕业务能力组织服务,每个服务拥有独立的数据存储和进程空间。这种架构特别适合大型复杂系统,能显著提升多团队协作效率和技术栈灵活性。然而在实践中,微服务也面临分布式事务、服务治理等挑战,需要配套的服务网格、API网关等基础设施支持。从工程实践角度看,架构选型应遵循'单体优先'原则,根据团队规模、业务复杂度等维度评估,采用渐进式演进策略。当前主流趋势是混合架构,结合微服务与模块化单体的优势,在电商、金融等高

ciya3282的博客 429

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

XSL中for-each循环过滤重复节点

最近用到xsl语法,想要根据某个属性去过滤具有相同属性的节点,去网上查找xsl资料很少。 直接上示例代码。 &lt;xsl:key name="testDistinct" match="Tests/Test/TestA" use="@attr"/&gt; &lt;xsl:template match="/"&gt; &lt;xsl:for-each select="

u800820的专栏 2402

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

12 月1号工作笔记

 今天感觉还是没有解决什么问题。1、XML读到文本上插入回车换行和缩进,本来想用递归函数做,没想出来不说,这种想法从根本上还被老板给否决掉了,说要用样式表XSL的东东,我不懂。。2、把一个Form上的控件位置记录下来,在另一个Form上的控件上移动到那个位置。变态啊。。我要用相对坐标来计算,快晕死,还要考虑单位换算的问题。没解决。郁闷的一天。。。 

joywang918的专栏 583

XSL自定义函数

利用微软的XSL的继承特性,用户可以自定义XSL函数.基本原理是用户写的脚本代码写在msxsl中,并设置这部分msxsl继承到用户自定义空间中,那么用户就可以通过用户自定义空间使用msxsl中的脚本代码.步骤:1. xsl:stylesheet中定义msxml和用户空间.   xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0" 

smalle的专栏 1935

XSL函数

        学习XSL样式方法,即可用于XSL元素、value-of >、的select属性、的match属性、、的test属性中,对元素的范围进行筛选,从而提供更大的灵活性。  XML与DHTML(动态HTML)一样,这些节点都是一个个对象,而且这些对象都是有层次的,从根节点开始构成一颗层次清淅的树状结构,这就形成了文档对象模型DOM,通过对象的属性、方法来达到访问控制XML节点的目的。

aa 1356

XSL学习教程:运算符和函数

 XSL学习教程:运算符和函数 本文来自于: http://www.code-123.com/html/20087151125504469388.html       

fxhflower的专栏 1071

跟我学XSL(一)(转)

随着Internet的发展,越来越多的信息进入互联网,信息的交换、检索、保存及再利用等迫切的需求使HTML这种最常用的标记语言已越来越捉襟见肘。HTML将数据内容与表现融为一体,可修改性、数据可检索性差,而XML借鉴了HTML与数据库、程序语言的优点,将内容与表现分开,不仅使检索更为方便,更主要的是用户之间数据的交换更加方便,可重用性更强。   XML是一种元标记语言,没有许多固定的标记,为WEB

hyde82的专栏 3388

什么是XSL

什么是XSL<!--google_ad_client = "pub-2986370686825330";google_alternate_color = "FFFFFF";google_ad_width = 250;google_ad_height = 250;google_ad_format = "250x250_as";google_ad_type = "text_

半亩方塘 3420

xsl:script与函数调用输出xsl:eval应用示例

 本文来源于我在csdn社区的一个帖。http://community.youkuaiyun.com/Expert/TopicView.asp?id=5299556-)函数说明xsl:script xsl的扩展脚本函数xsl:eval 输出字符串形式的数据二)示例:功能:遍历xml文件,将里面的数字取出,输出以数字为参数的函数调用后的值。 test.xml - ->     10    4  

denny的专栏 4001
上一篇: XSL函数二----DOM中对象的方法
itbook
博客等级 码龄25年 0粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值