看下面一段代码:s='12345678' s.gsub!(/(\d)(?=(\d\d\d)+(?!\d))/, "\\1,") 返回的结果是12,345,678正则表达式中,?=为正向预查,在任何开始匹配圆括号内的正则表达式模式的位置来匹配搜索字符串,?!为负向预查,在任何开始不匹配该正则表达式模式的位置来匹配搜索字符串,这个正则表达式的意思为:匹配以一个数字开头,接着跟上N组3个数字,但不以一个数字结尾。?=和?!为预查,不消耗字符串,发现匹配后立即开始下一次搜索,而不是从包含预查的字符之后开始。gsub!和scan一样,从字符串的0位开始扫描匹配正则表达式,所以当扫描 ...
Ruby中返回值的关键字除了return外,还有一个returning,使用returning返回结果时,可以对结果进行处理。Rails中的示例代码如下: def extract_namespace(record_or_hash_or_array) returning "" do |namespace| if record_or_hash_or_array.is_a?(Array) record_or_hash_or_array.delete_if do |record_or_namespace| ...
2.0.2 - 增加了has_finder:class Article < ActiveRecord::Base has_finder :published, :conditions => {:published => true} has_finder :popular, :conditions => ... end Article.published.paginate(:page => 1) Article.published.popular.count Article.popular.find(:first) Article. ...
phoenix520
搜索本博客
最近加入圈子
存档
最新评论