erb自动生成html页面一例
原来的html蛮长的,源代码如下:
<html> <head> <style type="text/css"> ul.none {list-style-type: none} ul.disc {list-style-type: disc} ul.circle {list-style-type: circle} ul.square {list-style-type: square} ul.decimal {list-style-type: decimal} ul.decimal-leading-zero {list-style-type: decimal-leading-zero} ul.lower-roman {list-style-type: lower-roman} ul.upper-roman {list-style-type: upper-roman} ul.lower-alpha {list-style-type: lower-alpha} ul.upper-alpha {list-style-type: upper-alpha} ul.lower-greek {list-style-type: lower-greek} ul.lower-latin {list-style-type: lower-latin} ul.upper-latin {list-style-type: upper-latin} ul.hebrew {list-style-type: hebrew} ul.armenian {list-style-type: armenian} ul.georgian {list-style-type: georgian} ul.cjk-ideographic {list-style-type: cjk-ideographic} ul.hiragana {list-style-type: hiragana} ul.katakana {list-style-type: katakana} ul.hiragana-iroha {list-style-type: hiragana-iroha} ul.katakana-iroha {list-style-type: katakana-iroha} </style> </head> <body> <ul class="none"> <li>"none" 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="disc"> <li>Disc 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="circle"> <li>Circle 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="square"> <li>Square 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="decimal"> <li>Decimal 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="decimal-leading-zero"> <li>Decimal-leading-zero 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="lower-roman"> <li>Lower-roman 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="upper-roman"> <li>Upper-roman 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="lower-alpha"> <li>Lower-alpha 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="upper-alpha"> <li>Upper-alpha 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="lower-greek"> <li>Lower-greek 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="lower-latin"> <li>Lower-latin 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="upper-latin"> <li>Upper-latin 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="hebrew"> <li>Hebrew 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="armenian"> <li>Armenian 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="georgian"> <li>Georgian 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="cjk-ideographic"> <li>Cjk-ideographic 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="hiragana"> <li>Hiragana 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="katakana"> <li>Katakana 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="hiragana-iroha"> <li>Hiragana-iroha 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <ul class="katakana-iroha"> <li>Katakana-iroha 类型</li> <li>茶</li> <li>可口可乐</li> </ul> </body> </html>
现在用erb改写一下:
#!/usr/bin/ruby #encoding:utf-8 require "erb" temp = ERB.new <<HTML_DOC <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <style type="text/css"> <% types = %w[none disc circle square decimal decimal-leading-zero lower-roman \ upper-roman lower-alpha upper-alpha lower-greek lower-latin upper-latin \ hebrew armenian georgian cjk-ideographic hiragana katakana hiragana-iroha \ katakana-iroha] %> <% types.each do |t| %> ul.<%=t%> {list-style-type: <%=t%>} <% end %> </style> </head> <body> <% types.each do |t| %> <ul class=<%=t%>> <li><%=t%> 类型</li> <li>茶</li> <li>可口可乐</li> </ul> <% end %> </body> </html> HTML_DOC puts temp.result #或者temp.run
之后在终端加运行权限:chmod u+x e.rb,然后执行: ./e.rb >index.html,哦鸟!
erb自动生成html页面一例的更多相关文章
- 微软Connect教程系列--自动生成增删改查页面工具介绍(二)
本章课程描述了vs2015的三个特点,其中主要将描述在vs2015下面,使用命令自动生成增删改查界面,具体如下: 1.web.config文件不在存在,用config.json替代,以适应支撑vs的插 ...
- 文件参数化-utp框架之根据yaml文件自动生成python文件+utp运行用例
根据yaml文件自动生成python文件 utp框架: bin目录:存放执行文件(run.py) cases目录:存放生成的用例的python文件(该目录下的文件为根据data目录下的测试用例生成的p ...
- 【微信】微信小程序 新建页面目录后,怎么自动生成目中的的四个基本文件呢? 新建目录报错如下VM458:2 未找到 app.json 中的定义的 pages "pages/module/module" 对应的 WXML 文件
如下图,在使用微信开发者工具过程中,新创建了页面目录,想要页面文件夹中自动生成四个基本文件 但是新创建了一个页面文件夹,里面的四个基本文件并没有展示出来 然后在app.json添加这个路径,ctrl+ ...
- 织梦DedeCMS信息发布员发布文章默认自动审核更新并生成HTML页面
织梦DedeCMS信息发布员发布文章默认自动审核更新并生成HTML页面 一直以为DEDECMS的信息发布员在后台发布文章后,非要管理员审核才能显示,今天一哥们问我这个问题.问:“能不能直接发布,并自动 ...
- 页面定制CSS代码初探(六):h2、h3 标题自动生成序号 详细探索过程
前言 最近在整理博客写作格式的规范,碰到一个问题:标题要不要加序号? 直到我碰到一个人这么说 手动维护编号实在是一件很闹心的事情, 如果位置靠前的某个段落被删除了, 那么几乎每个段落的编号都要手动修改 ...
- 利用python自动生成verilog模块例化模板
一.前言 初入职场,一直忙着熟悉工作,就没什么时间更新博客.今天受“利奇马”的影响,只好宅在家中,写写技术文章.芯片设计规模日益庞大,编写脚本成了芯片开发人员必要的软技能.模块端口动不动就几十上百个, ...
- ASP.NET关于书籍详情和删除的Demo(HttpHandler进行页面静态化[自动生成html网页]+Entity Framework通过类创建数据库+EF删查)
这次的Demo如标题所示, 首先第一步EF创建数据库 创建两个类,一个是图书类,一个是图书类别的类 using System; using System.Collections.Generic; us ...
- tep集成mitmproxy录制流量自动生成用例
使用 操作过程非常简单,流程如下: ①配置过滤域名 必须配置,不然会有很多无效流量造成数据冗余. ②启动代理 「示例」使用了反向代理,tep自带FastApi启动Mock服务: 「实际」使用正向代理, ...
- 用 Python 为接口测试自动生成用例
用Python为接口自动生成测试用例 基于属性的测试会产生大量的.随机的参数,特别适合为单元测试和接口测试生成测试用例 尽管早在2006年haskell语言就有了QuickCheck来进行" ...
随机推荐
- 两个activity或者activity和fragment传值
使用Fragment的时候可能需要在两个Fragment之间进行参数的传递,开始想着可以使用SharedPreferences进行处理,想想这些简单的参数没有必要使用这么麻烦的方式去实现,翻了一下Fr ...
- 保证service存活
Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStart ...
- ajax核心技术1---XMLHttpRequset对象的使用
AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.AJAX = 异步 Ja ...
- Linux上程序调试的基石(1)--ptrace
引子: 1.在Linux系统中,进程状态除了我们所熟知的TASK_RUNNING,TASK_INTERRUPTIBLE,TASK_STOPPED等,还有一个TASK_TRACED.这表明这个进程处于什 ...
- 关于NOR_FLASH的大小在单片机程序中的应用
在单片机开发中,NOR_FLASH常用的有4M和8M的大小: 4M的FLASH在程序中可以这样表示:Ptr < 0x220000 8M的FLASH在程序中可以这样表示:Ptr < 0x40 ...
- Android日历视图(CalendarView)讲解-android学习之旅(三十六)
CalendarView简介 CalendarView用于显示和选择日期,如果希望监听事件的改变可以用setOnDateChangeListener()方法. CalendarView属性介绍 代码示 ...
- FFmpeg获取DirectShow设备数据(摄像头,录屏)
这两天研究了FFmpeg获取DirectShow设备数据的方法,在此简单记录一下以作备忘.本文所述的方法主要是对应Windows平台的. 1. 列设备 ffmpeg -list_devic ...
- C# 运行时序列化
一. 序列化与反序列的作用 为什么要有序列化呢,考虑下面这种情况,在WINFORM或者更为方便的WPF工程中,当我们进行UI设计时,可以随意的将一个控件剪切/张贴到另外一个地方.操作方便的背后是什么在 ...
- Java进阶(二十六)公司项目开发知识点回顾
公司项目开发知识点回顾 前言 "拿来主义"在某些时候并不是最佳选择,尤其是当自己遇到问题的时候,毫无头绪. 在一次实验过程中,需要实现数据库的CRUD操作.由于之前项目开发过程中, ...
- Shell 正则表达式总结及其含义举例
基本元字符集及其含义: ^ 只匹配行首 $ 只匹配行尾 * 只一个单字符后紧跟*,匹配0个或多个此单字符 [ ] 只匹配[ ]内字符.可以是一个单字符,也可以是字符序列.可以使用 - 表 ...