CommonTemplate(
http://www.commontemplate.org)已提供了注释版和属性版语法外套.
注释版语法外套:
<html>
<body>
<!--$if{users != null && users.size &gt; 0}-->
<table border="1">
<!--$for{user : users}-->
<tr>
<td><!--$output{for.index + 1}-->1<!--$end--></td>
<td><!--$output{user.name}-->james<!--$end--></td>
<td><!--$output{user.coins}-->2.00<!--$end--></td>
</tr>
<!--$end-->
</table>
<!--$end-->
</body>
</html>
属性版语法外套:
<html>
<body>
<table ct:if="users != null && users.size &gt; 0" border="1">
<tr ct:for="user : users">
<td><span ct:output="for.index + 1">1</span></td>
<td><span ct:output="user.name">james</span></td>
<td><span ct:output="user.coins">2.00</span></td>
</tr>
</table>
</body>
</html>
当模板应用于XML/HTML时, 可能需要保持完整的DOM模型结构,
属性版语法外套也可以做到, 但转换比较耗时, 且存在不规则HTML语法兼容问题.
桂林提议加入XML/HTML标签版语法外套, 使用如:
<html>
<body>
<ct:if param="users != null && users.size &gt; 0">
<table border="1">
<ct:for param="user : users">
<tr>
<td><ct:out param="for.index + 1"/></td>
<td><ct:out param="user.name"/></td>
<td><ct:out param="user.coins"/></td>
</tr>
</ct:for>
</table>
</ct:if>
</body>
</html>
其结构与标准语法是一对一的, 转换起来非常方便.
使用ResourceFilter扩展点进行实现,
在资源加载时使用简单的正则表达式替换,
不解析HTML语法,也就没有不规则HTML语法兼容问题,
只用了两条正则表达式, 就完成了转换:
text = text.replaceAll("\\<ct\\s*\\:\\s*([0-9|_|A-Z|a-z]+)\\s+param\\s*\\=\\s*\\"([^\\"]+)\\"\\s*\\/?\\>", "\\$$1{$2}");
text = text.replaceAll("\\<\\/\\s*ct\\s*\\:\\s*([0-9|_|A-Z|a-z]+)\\s*\\>", "\\$end{$1}");
加载模板资源时有内存消耗和转换时间消耗,但消耗不是很大,
从0.8.7版本开始支持.
参见:
http://www.commontemplate.org
分享到:
相关推荐
HTML基本语法标签是构建网页的基础,包括基本结构标签、链接标签、图片标签、换行标签、分段标签、字体样式标签、表格标签、表格单元格标签、字体标签、对齐标签、水平画线标签、强制换行标签、文本标签、加粗文字...
2. **miniBrowse.java**:根据标签“Java小程序”,我们可以推断这可能是该HTML语法分析程序的核心源代码文件,用Java编程语言编写。Java是一种广泛使用的面向对象的编程语言,以其跨平台能力和安全性著称。在这个...
学习HTML语法学习HTML语法学习HTML语法学习HTML语法学习HTML语法 学习HTML语法学习HTML语法学习HTML语法学习HTML语法学习HTML语法 学习HTML语法学习HTML语法学习HTML语法学习HTML语法学习HTML语法 学习HTML语法学习...
在编写HTML代码时,遵循正确的语法至关重要,因为任何错误都可能导致页面显示不正常或者无法正确解析。正则表达式是一种强大的文本处理工具,可以用来检查、查找、替换或匹配HTML代码中的特定模式。而一个“超级文本...
### HTML语法入门(简单的基本HTML语法知识) #### 一、HTML简介 HTML(HyperText Markup Language),即超文本标记语言,是一种用于创建网页的标准标记语言。通过使用一系列预定义的标签,HTML允许开发者构建和...
html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程chm版html语法教程...
认识HTML语法 (标签快速导览) ◆ 网页架构 ◆ 分隔标签 ◆ 排版标签 ◆ 字体标签 ◆ 文字标签 ◆ 影像标签 ◆ 背景标签 ◆ 连结标签 ◆ 表格标签 ◆ 序列标签 ◆ 表单标签 ◆ 框架标签 ◆ 其他技巧
**JSP技术的语法-标签** 在Web开发中,JavaServer Pages (JSP) 技术是一种用于构建动态网页的应用程序开发平台。JSP通过结合HTML、CSS、JavaScript以及Java代码,提供了强大的功能来创建交互式的网页。本篇将详细...
2. 分隔标签:也就是所谓的水平线,是 HTML 语法中用来分隔内容的标签。 3. 排版标签:针对标签的属性,可以做适当的版面编排。 4. 字体标签:教导您设定文字的字体。 5. 文字标签:教导您设定文字的颜色、行距、...
html5基础语法与标签.md
以上仅是HTML语法的一部分,全面掌握HTML需要学习更多的标签和属性,以及如何结合CSS和JavaScript进行更复杂的设计和交互。《HTML语法大全》作为一本详实的参考书,提供了丰富的示例和解释,是学习HTML不可多得的...
html----HTML+CSS基础教程(课件PPT版)----介绍HTML和CSS的基础知识。学习HTML基础语法、标签、CSS基础语法和选择器,以及它们的基本用法。
在HTML语法中,大致上可以分为: 网页架构:主要网页主架构的介绍 分隔标签:也就是所谓的水平线 排版标签:针对标签的属性,可做适当的版面编排 字体标签:教导您设定文字的字体。 文字标签:教导您设定文字的...
- **HTML 3.0**:引入了更严格的语法规范,增加了更多标记语言元素。 - **HTML 3.2**:增加了更多的布局和样式控制。 - **HTML 4.0**:提供了更强大的功能,包括框架、样式表、客户端脚本等。 - **XHTML**:强调XML...
1. **HTML语句结构**:HTML语句通常由起始标签和结束标签组成,形如`<TAG>`和`</TAG>`。起始标签开启一个元素,结束标签则关闭它。例如,`<p>`用于开始一个段落,`</p>`用于结束。有些标签是自闭合的,比如`<img>`,...
### 详解HTML、CSS与JavaScript语法辞典 #### HTML(HyperText Markup Language) HTML是一种标记语言,用于构建网页的基本结构。它由一系列的元素组成,这些元素通过标签表示。了解HTML的基本语法对于创建任何...
适用于想复习HTML5所以标签,语法的同学 适用于HTML5期末考试的一个快速复习 适用于快速查找与记忆HTML5大量标签的同学 适用于忘了某些标签,想快速查看的同学 适用于喜欢阅读思维导图的同学 使用场景: 个人复习 ...
HTML初识基础认知是学习HTML标签的基础,理解HTML的基本语法和标签的关系,能够使用排版标签实现网页中的标题、段落等效果,使用相对路径选择不同目录下的文件,使用媒体标签在网页中显示图片、播放音频和视频,使用...
html基本语法,html入门知识,html基本特性