首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

8.2  一般非限定输入

在Ruby中,有一些符号的命名是为了用于改变代码或文字格式,并将其转换成字符串、数组、正则表达式和Shell。这是脚本语言中独有的特性,在Perl中这种特性被充分发挥。在Ruby中,一般非限定输入符号的含义如表8.1所示。

表8.1                                                 一般非限定输入符号的含义

类  型

含  义

%q

单引号字符串

%Q

双引号字符串

%w

Token的数组

%r

正则表达式模式

%x

Shell命令

这些非限定符号后面紧跟任何特殊符号都可以成为类似于{}的范围限定符,这里建议使用{}和//。示例如下。

puts %q{ab bc cd de ef}

puts %q/ab bc cd de ef/

puts %q#ab bc cd de ef#

以上代码执行的结果都是ab bc cd de ef。如果内容中存在该特殊符号,可以使用“\”进行转义,如:

puts %q!ab bc \!cd de ef!

这段程序的输出结果如下所示。

ab bc !cd de ef

一般非限定输入也可以是多行的,下面这种用法就是用了一个{}包含了多行的字符串。

puts %q{puts %q$ab bc cd de ef$

puts %q/ab bc cd de ef/

puts %q#ab bc cd de ef#

puts %q!ab bc \!cd de ef!}

这段程序的输出结果如下所示。

puts %q$ab bc cd de ef$

puts %q/ab bc cd de ef/

puts %q#ab bc cd de ef#

puts %q!ab bc \!cd de ef!

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论