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语法学习...
内容概要:本文档详细介绍了HTML5的基础语法结构和各种标签的应用。涵盖了HTML的基本概念、语法特点、文档结构、常见标签及其属性,以及如何在网页中使用这些标签创建基本的网页结构。具体包括文档声明、字符集设置...
HTML 基础语法是指 HTML 文档的基本语法规则,包括标签、属性、值、实体、注释、特殊符号等。 HTML 文档结构: * HTML头:用于指定 HTML 文档的基本信息,包括标题、样式表、脚本等。 * body:用于指定 HTML 文档...
在编写HTML代码时,遵循正确的语法至关重要,因为任何错误都可能导致页面显示不正常或者无法正确解析。正则表达式是一种强大的文本处理工具,可以用来检查、查找、替换或匹配HTML代码中的特定模式。而一个“超级文本...
Markdown语法大全(超级版)是Markdown语法的全面指南,涵盖了Markdown的设计理念、内联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还包括表格、表格、框架、表单等更复杂的元素和属性,以及CSS(层叠样式表)用于美化网页外观和JavaScript用于增加交互性。学习HTML是构建动态、交互式网页的基础。
- **HTML 3.0**:引入了更严格的语法规范,增加了更多标记语言元素。 - **HTML 3.2**:增加了更多的布局和样式控制。 - **HTML 4.0**:提供了更强大的功能,包括框架、样式表、客户端脚本等。 - **XHTML**:强调XML...
适用于想复习HTML5所以标签,语法的同学 适用于HTML5期末考试的一个快速复习 适用于快速查找与记忆HTML5大量标签的同学 适用于忘了某些标签,想快速查看的同学 适用于喜欢阅读思维导图的同学 使用场景: 个人复习 ...
html_css_javascript语法手册 html_css_javascript语法手册 html_css_javascript语法手册 html_css_javascript语法手册 html_css_javascript语法手册
HTML初识基础认知是学习HTML标签的基础,理解HTML的基本语法和标签的关系,能够使用排版标签实现网页中的标题、段落等效果,使用相对路径选择不同目录下的文件,使用媒体标签在网页中显示图片、播放音频和视频,使用...