`

Ruby 2.4 的一些新特性 已翻译 100%

 
阅读更多
使用了 Regexp#match? 的更快的正则表达式
:
require 'benchmark/ips'

Benchmark.ips do |bench|
  EMPTY_STRING  = ''
  WHITESPACE    = "   \n\t\n   "
  CONTAINS_TEXT = '   hi       '

  PATTERN = /\A[[:space:]]*\z/

  bench.report('Regexp#match?') do
    PATTERN.match?(EMPTY_STRING)
    PATTERN.match?(WHITESPACE)
    PATTERN.match?(CONTAINS_TEXT)
  end

  bench.report('Regexp#match') do
    PATTERN.match(EMPTY_STRING)
    PATTERN.match(WHITESPACE)
    PATTERN.match(CONTAINS_TEXT)
  end

  bench.report('Regexp#=~') do
    PATTERN =~ EMPTY_STRING
    PATTERN =~ WHITESPACE
    PATTERN =~ CONTAINS_TEXT
  end

  bench.report('Regexp#===') do
    PATTERN === EMPTY_STRING
    PATTERN === WHITESPACE
    PATTERN === CONTAINS_TEXT
  end

  bench.compare!
end
# gxgssww3.n77888.com,ww2.n77888.com,www.baidu.com,ww4.n77888.comgxgss
# >> Warming up --------------------------------------
# >>        Regexp#match?   160.255k i/100ms
# >>         Regexp#match    44.904k i/100ms
# >>            Regexp#=~    71.184k i/100ms
# >>           Regexp#===    71.839k i/100ms
# >> Calculating -------------------------------------
# >>        Regexp#match?      2.630M (± 4.0%) i/s -     13.141M in   5.004929s
# >>         Regexp#match    539.361k (± 3.9%) i/s -      2.694M in   5.002868s
# >>            Regexp#=~    859.713k (± 4.2%) i/s -      4.342M in   5.060080s
# >>           Regexp#===    872.217k (± 3.5%) i/s -      4.382M in   5.030612s
# >>
# >> Comparison:
# >>        Regexp#match?:  2630002.5 i/s
# >>           Regexp#===:   872217.5 i/s - 3.02x slower
# >>            Regexp#=~:   859713.0 i/s - 3.06x slower
# >>         Regexp#match:   539361.3 i/s - 4.88x slower
gxgadphttp://a2.att.hudong.com/72/89/01300001248577140184892180475_s.jpggxgadp
gxgaduhttp://ww2.n77888.comgxgadu
分享到:
评论

相关推荐

    Ruby 2.4.2-2 (x64)

    If you don’t know what version to install and you’re getting started with Ruby, we recommend you use Ruby 2.4.X installers. These provide a stable language and a extensive list of packages (gems) ...

    ruby-2.4.5.tar.gz

    Ruby-2.4.5版本中,可能引入了一些新的特性、优化或bug修复。例如,它可能提高了垃圾回收的效率,增强了并发处理能力,或者修复了已知的安全问题。此外,该版本也可能对其他编程语言如Java、Python或Perl的互操作性...

    rh-ruby24-ruby-irb-2.4.0-75.el7.noarch.rpm

    官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装

    ruby-2.4.4 可在ubuntu下安装

    在我如何使用github搭建个人网站中有介绍如何安装使用

    2.4-3.0.rubygems.rar

    标题“2.4-3.0.rubygems.rar”暗示了这个压缩包可能包含了Ruby Gems从版本2.4到3.0之间的升级或集合,这对于Ruby开发者来说是一个重要的资源,因为版本升级通常会带来性能优化、新功能以及对旧问题的修复。...

    Ruby-bladetranslate是一款用ruby打造的简单控制台翻译软件

    在开发blade-translate时,开发者充分利用了Ruby的这些特性,使得翻译功能能够被轻松集成到日常的工作流中。这款工具的实现主要依赖于调用第三方翻译API,例如Google Translate或Bing Translator,将翻译服务的接口...

    Ruby-Mobility可拔插的Ruby翻译框架

    Ruby-Mobility是一款强大的、可拔插的Ruby翻译框架,专为解决多语言支持而设计。这个框架的主要目标是提供一种灵活、高效且易于集成的方式来处理应用中的国际化(i18n)问题。Ruby-Mobility的核心设计理念在于解耦...

    Ruby语言的动态特性解析及其应用实例

    内容概要:本文详细探讨了 Ruby 语言的动态特性,涵盖了多个关键方面的应用实例。包括使用 eval 系列方法(eval、class_eval、module_eval 和 instance_eval)动态执行字符串形式的代码;动态为类或者对象添加方法...

    drone-ruby:Drone 0.7.0 CI映像以构建我们在Juicymo使用的Ruby 2.4.22.5.1应用程序

    drone-ruby:Drone 0.7.0 CI映像以构建我们在Juicymo使用的Ruby 2.4.22.5.1应用程序

    ruby on rails 2.1新特性介绍

    ### Ruby on Rails 2.1新特性详尽解析 #### 概述 Ruby on Rails,一个备受推崇的Web开发框架,自2004年由David Heinemeier Hansson首次发布以来,便以其优雅的设计和“约定优于配置”的理念赢得了全球开发者的心。...

    ruby on rails最新版

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用...不过,使用前应确保已安装好Ruby环境,并了解基本的Ruby语法和Rails框架概念。同时,保持对框架更新的关注,及时升级以确保应用的安全性和稳定性。

    simplecov_json_formatter:用于ruby 2.4+的SimpleCov代码覆盖率工具的JSON格式化程序

    在ruby 2.4+上生成 ruby代码覆盖率结果的格式化JSON报告。 最初旨在将simplecov的结果读取功能添加到CI工具中。总览您可以期望此gem生成一个coverage.json文件,该文件位于coverage文件夹中。 根据您的SimpleCoV...

    ruby-2.4.3.tar.gz

    Ruby 2.4系列引入了性能优化、新的语法糖以及对弃用特性的一些处理。 安装Ruby 2.4.3的步骤通常包括以下几步: 1. **解压文件**:首先,你需要使用`tar`命令来解压下载的`.tar.gz`文件。在终端中输入: ``` tar ...

    Ruby资源ruby-v3.1.1.zip

    本资源“ruby-v3.1.1.zip”包含了Ruby的最新版本3.1.1,这是一个重要的里程碑,因为它引入了新特性、性能优化以及对旧版本的改进。 在Ruby 3.1.1中,开发者可以期待以下关键特性: 1. **块参数解构**:Ruby 3.1...

    Ruby编程入门与高级特性实战详解

    内容概要:本文全面介绍了Ruby编程语言的基础知识和高级特性,从安装Ruby到基本语法规则,再到类与对象的概念。同时深入讲解了模块与混入、块与Proc、异常处理、元编程等高级特性,并通过创建命令行工具和Web应用的...

    Ruby on Rails 2.0的新特性介绍

    【Ruby on Rails 2.0的新特性介绍】 Ruby on Rails 2.0 是这个流行的Web开发框架的一个重大更新,发布于2007年底。Rails以其快速的版本迭代和创新的功能而闻名,从1.0到2.0的升级也不例外。这次更新带来了许多新...

    Ruby的语法和语言特性总结

    下面我们将深入探讨Ruby的语法和语言特性,包括基础语法、编程模型、流程控制、鸭子类型、函数、数组以及散列表。 1. 基础语法 Ruby的交互式环境允许开发者直接运行代码,如`puts 'hello, world'`会输出字符串并...

    ruby 经典教程从新手到专家

    《Ruby经典教程:从新手到专家》是一本深入浅出介绍Ruby编程语言的权威指南,由Peter Cooper编写,why the lucky stiff作序推荐,专为Ruby爱好者和希望掌握Ruby编程技术的学习者设计。本书全面覆盖了Ruby编程的基础...

    Ruby Ruby Ruby Ruby Ruby Ruby

    Ruby Ruby Ruby Ruby Ruby Ruby

    Ruby新手学习书(Ruby语言中文教程)和Rails_4_days

    6. **元编程**:Ruby的动态特性允许你在运行时修改代码,这是其独特魅力之一。元编程让你能够编写更加灵活和强大的代码。 7. **标准库与Gem**:Ruby拥有丰富的标准库,同时社区还提供了无数的Gem(Ruby的库或模块)...

Global site tag (gtag.js) - Google Analytics