Ruby中百分号和字面值的使用示例

 更新时间:2015年08月03日 16:25:57   投稿:goldensun  
这篇文章主要介绍了Ruby中百分号和字面值的使用示例,作者给出了相关编程风格上的一些建议,需要的朋友可以参考下

    需要插值与嵌入双引号的单行字符串使用 %() (是 %Q 的简写)。多行字符串,最好用 heredocs 。

  # bad (no interpolation needed)
  %(<div class="text">Some text</div>)
  # should be '<div class="text">Some text</div>'

  # bad (no double-quotes)
  %(This is #{quality} style)
  # should be "This is #{quality} style"

  # bad (multiple lines)
  %(<div>\n<span class="big">#{exclamation}</span>\n</div>)
  # should be a heredoc.

  # good (requires interpolation, has quotes, single line)
  %(<tr><td class="name">#{name}</td>)

    没有 ' 和 " 的字符串不要使用 %q 。除非许多字符需要转义,否则普通字符串可读性更好。

  # bad
  name = %q(Bruce Wayne)
  time = %q(8 o'clock)
  question = %q("What did you say?")

  # good
  name = 'Bruce Wayne'
  time = "8 o'clock"
  question = '"What did you say?"'

    %r 的方式只适合于定义包含多个 / 符号的正则表达式。

  # bad
  %r(\s+)

  # still bad
  %r(^/(.*)$)
  # should be /^\/(.*)$/

  # good
  %r(^/blog/2011/(.*)$)

    除非调用的命令中用到了反引号(这种情况不常见),否则不要用 %x。

  # bad
  date = %x(date)

  # good
  date = `date`
  echo = %x(echo `date`)

    不要用 %s 。社区倾向使用 :"some string" 来创建含有空白的符号。

    用 % 表示字面量时使用 (), %r 除外。因为大括号经常出现在正则表达式在很多场景中在很多场景中不太通用的字符例如 { 作为分割符可能是一个更好的选择,取决于正则式的内容。

  # bad
  %w[one two three]
  %q{"Test's king!", John said.}

  # good
  %w(one two three)
  %q("Test's king!", John said.)


相关文章

  • 简要说明Ruby中的迭代器

    简要说明Ruby中的迭代器

    这篇文章主要介绍了Ruby中的迭代器,迭代器的概念在动态语言的编程中十分重要,文章中介绍了Ruby中的each迭代器和collect迭代器,需要的朋友可以参考下
    2015-04-04
  • Ruby中常用的字符串处理函数使用实例

    Ruby中常用的字符串处理函数使用实例

    这篇文章主要介绍了Ruby中常用的字符串处理函数使用实例,本文总结了Ruby中最常用的字符串处理函数,如返回字符串的长度、判断字符串中是否包含另一个串、字符串插入、字符串分隔、默认分隔符为空格等内容,需要的朋友可以参考下
    2015-01-01
  • Ruby中相等性判断的4种方法

    Ruby中相等性判断的4种方法

    这篇文章主要介绍了Ruby中相等性判断的4种方法,本文讲解了“==” 最常见的相等性判断、“===” 用于 case 语句的相容判断、“equal?” 相同对象判断、“eql?” 对象 hash 值判断等内容,需要的朋友可以参考下
    2015-03-03
  • Ruby实现的最短编辑距离计算方法

    Ruby实现的最短编辑距离计算方法

    这篇文章主要介绍了Ruby实现的最短编辑距离计算方法,本文直接给出实现代码,需要的朋友可以参考下
    2015-05-05
  • Ruby最简单的消息服务器代码

    Ruby最简单的消息服务器代码

    这篇文章主要介绍了Ruby最简单的消息服务器,大家参考使用
    2013-11-11
  • 使用Ruby来编写访问Twitter的命令行应用程序的教程

    使用Ruby来编写访问Twitter的命令行应用程序的教程

    这篇文章主要介绍了使用Ruby来编写访问Twitter的命令行应用程序的教程,文章来自于IBM官方网站技术文档,需要的朋友可以参考下
    2015-04-04
  • 举例初步讲解Ruby中的正则表达式

    举例初步讲解Ruby中的正则表达式

    这篇文章主要介绍了Ruby中的正则表达式,是Ruby学习进阶当中的重要知识,需要的朋友可以参考下
    2015-05-05
  • ruby实现的插入排序和冒泡排序算法

    ruby实现的插入排序和冒泡排序算法

    最近刚开始学ruby为了练习一下基本语法的使用,用ruby写了一下插入排序算法,可能有些从C#翻译过来的痕迹
    2014-05-05
  • Ruby中关于模块的一些基础知识

    Ruby中关于模块的一些基础知识

    这篇文章主要介绍了Ruby中关于模块的一些基础知识,是Ruby入门学习中的一些重要知识点,需要的朋友可以参考下
    2015-07-07
  • Ruby中的循环语句的用法教程

    Ruby中的循环语句的用法教程

    这篇文章主要介绍了Ruby中的循环语句的用法教程,逻辑循环语句是每门编程语言的基础,需要的朋友可以参考下
    2015-05-05

最新评论