匹配模式 - XSL教程 - 4

<xsl:template> 元素定义了用于匹配节点的规则(match,其中"/"匹配整个文档),在apply-template使用
   语法规则为:
<xsl:template
name="name"
match="pattern"
mode="mode"
priority="number">  
<!-- Content:(<xsl:param>*,template) -->
</xsl:template>

其中:
  name 模板名称
  match Xpath语句,指定条件
  mode模式,例如红,蓝等样式
  priority优先级,为数字
  例如如下的xml文件:<?xml version="1.0" encoding="GB2312"?>
<?xml:stylesheet type="text/xsl" href="UserList_template.xsl"?>
<Users>
    <User IsAdmin='OK'>
        <Name>5do8</Name>
        <ID>1</ID>
        <Contact>
            <QQ>369987789</QQ>
            <EMAIL>service@163.com</EMAIL>
        </Contact>
    </User>
    <User>
        <Name>cjjer</Name>
        <ID>2</ID>
        <Contact>
            <QQ>369987789</QQ>
            <EMAIL>service@163.com</EMAIL>
        </Contact>
    </User>
    <User>
        <Name>Admin</Name>
        <ID>3</ID>
        <Contact>
            <QQ>369987789</QQ>
            <EMAIL>service@163.com</EMAIL>
        </Contact>
    </User>
</Users>
其中使用的模板(UserList_template.xsl)为:
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
      <body>
      <h2>All User List</h2>
        <xsl:apply-templates/> 
      </body>
  </html>
</xsl:template>
<xsl:template match="User">
  <p>
  <xsl:apply-templates select="Name"/> 
  <xsl:apply-templates select="ID"/>
  </p>
</xsl:template>
<xsl:template match="Name">
  Name: <span style="color:#BB0000">
  <xsl:value-of select="."/></span>
  <br />
</xsl:template>
<xsl:template match="ID">
  ID: <span style="color:#808000">
  <xsl:value-of select="."/></span>
  <br />
</xsl:template>
</xsl:stylesheet>

可以以列表的方式显示用户信息。

(0)

相关推荐

  • 匹配模式 - XSL教程 - 4

    <xsl:template> 元素定义了用于匹配节点的规则(match,其中"/"匹配整个文档),在apply-template使用    语法规则为: <xsl:template name="name" match="pattern" mode="mode" priority="number">   <!-- Content:(<xsl:param>*,templ

  • 测试模式 - XSL教程 - 5

    xslt支持的测试模式语句,用于条件判断,主要有:<xsl:if> 和<xsl:choose>及其下的<xsl:when>和<xsl:otherwise>   还是在匹配模式中使用的用户列表数据源. 1:使用xsl:if <?xml version="1.0" encoding="GB2312"?> <xsl:stylesheet version="1.0" xmlns:xsl=&

  • 选择模式 - XSL教程 - 2

    什么是选择模式 选择模式语句将数据从XML中提取出来,是一种简单获得数据的方法,这几个标记都有一个select属性,选取XML中特定的结点名的数据  注意,每个xsl文件都需要导入xsl的命名空间,http://www.w3.org/TR/WD-xsl,例如在xml头声明之后加入:<p xmlns:xsl="http://www.w3.org/TR/WD-xsl"> 1.<xsl:for-each>   这个语句是逐个(select)选择某条件,应用条件.例如,

  • 关于XSL - XSL教程

    什么是XSL   全称Extensible Style Language,中文译作扩展样式语言,用于格式化XML文档,它由两部分组成.   1(XSLT ):XSL Transformation Language(XSLT),它可以把XML文档从一种格式转化为另一种格式.如转成html,文本或是基于文本的文档.   2( XPath):XSL格式化对象,格式化对象提供了CSS的另一方式 来格式化XML文档,以及应用样式到XML文档上! XML的使用   如下Html格式的数据:<HTML> &

  • swift where与匹配模式的实例详解

    swift where与匹配模式的实例详解 前言: 在众多 Swift 提供给 Objective-C 程序员使用的新特性中,有个特性把自己伪装成一个无聊的老头,但是却在如何优雅的解决"鞭尸金字塔"的问题上有着巨大的潜力.很显然我所说的这个特性就是 switch 语句, 对于很多 Objective-C 程序员来说,除了用在 Duff's Device 上比较有趣之外,switch 语句非常笨拙,与多个 if 语句相比,它几乎没有任何优势. 1.基本使用 Swift中switch语句c

  • 正则表达式全局匹配模式(g修饰符)

    正则表达式g修饰符: g修饰符用语规定正则表达式执行全局匹配,也就是在找到第一个匹配之后仍然会继续查找. 语法结构: 构造函数方式: new RegExp("regexp","g") 对象直接量方式: /regexp/g 浏览器支持: IE浏览器支持此元字符. 火狐浏览器支持此元字符. 谷歌浏览器支持此元字符. 实例代码: 实例一: var str="this is an antzone good"; var reg=/an/; console.

  • Angular指令之restict匹配模式的详解

    Angular指令之restict匹配模式的详解 <body data-ng-app="myapp"> <runn2></runn2> <div data-runn2></div> <div class="runn2"></div> <!-- directive: runn2 --> <script> var app=angular.module("

  • JS中正则表达式全局匹配模式 /g用法详解

    本文章来详细介绍js中正则表达式的全局匹配模式 /g用法,代码如下: var str = "123#abc"; var re = /abc/ig; console.log(re.test(str)); //输出ture console.log(re.test(str)); //输出false console.log(re.test(str)); //输出ture console.log(re.test(str)); //输出false 在创建正则表达式对象时如果使用了"g&q

  • 正则表达式惰性匹配模式(?)

    正则表达式惰性匹配模式: 在贪婪匹配模式一章节已经说过人性是贪婪的,希望获得更多的金钱.地位甚至美女,但是也有很多清心寡欲的人,只要满足基本的生活需求就可以了,在正则表达式中也有这样的匹配原则,下面就进行一下介绍. 一.惰性模式的概念: 此模式和贪婪模式恰好相反,它尽可能少的匹配字符以满足正则表达式即可,例如: var str="axxyyzbdkb"; console.log(str.match(/a.*b/)); 以上代码是贪婪模式,于是能够匹配整个字符串,下面将其修改成惰性匹配模

  • JS中正则表达式只有3种匹配模式(没有单行模式)详解

    JS正则表达式对象模式仅有如下三种:  g (全文查找出现的所有 pattern) i (忽略大小写) m (多行查找) 即没有单行匹配模式,Singleline(单行模式):更改.的含义,使它与每一个字符匹配(包括换行符\n). 如java中 String regex = "(?s)(?<=interface).{0,500}(shutdown)";---------"."表示在一行. 但可以采用[\d\D]或[\w\W]或[\s\S]或(.|\s)*?来解

随机推荐