`
sqlxx
  • 浏览: 16654 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

ruby中gsub和gsub!的区别

 
阅读更多

ruby中带“!"和不带"!"的方法的最大的区别就是带”!"的会改变调用对象本身了。比方说str.gsub(/a/, 'b'),不会改变str本身,只会返回一个新的str。而str.gsub!(/a/, 'b')就会把str本身给改了。


但是gsub和gsub!还有另外一个不同点就是,gsub不管怎么样都会返回一个新的字符串,而gsub!只有在有字符被替换的情况下才会返回一个新的字符串,假如说没有任何字符被替换,gsub!只会返回nil.

example:

'abc'.gsub(/a/, 'b') #返回'bbc'

'abc'.gsub!(/a/, 'b') #返回'bbc'

'abc'.gsub(/d/,'a') #返回'abc'

'abc'.gsub!(/d/, 'a') #返回nil

分享到:
评论

相关推荐

    turkish_support:土耳其语字符对核心Ruby方法的支持

    要求Ruby> = 2.7.0 导轨> = 6.0.0安装将此行添加到您的应用程序的Gemfile中: gem 'turkish_support'然后执行: $ bundle或自己安装为: $ gem install turkish_support用法安装gem后,您应该按照以下步骤操作。...

    轻巧的Ruby Web爬虫/爬虫,具有优雅的DSL,可从页面提取结构化数据。-Ruby开发

    用法:gem install wombat抓取页面:最简单的使用Wombat的方法是调用Wombat.crawl并将其传递给Wombat Web抓取工具以及优雅的DSL,该DSL可以分析网页中的结构化数据。 用法:gem install wombat抓取页面:使用Wombat...

    xproc:很棒的 Ruby 短过程

    程序 XProc 是对 Ruby 的改进,它允许您使用方便的速记语法编写简单的块,其灵感来自 Scala、Crystal 和 Elixir。安装将此行添加到应用程序的 Gemfile 中: gem "xproc"用法由于它是一种改进,因此您必须在要使用它...

    bury:类似 Ruby 的 JavaScript 方法

    类似于 Ruby 的 JavaScript 方法。 Bury.js 扩展了原生 JS 对象的原型,例如 String、Number 和 Array。 例子 [ 3 , 3 , 4 , null ] . compact . uniq . sum // => 7 [ 1 , 2 , 3 , 4 ] . append ( 5 ) . last ...

    string-chapter

    通过输入ruby并在终端中要运行的文件名来运行Ruby文件。 如果要运行string_multiplication.rb ,可以编写以下命令: ruby string_multiplication.rb 要重新运行此命令,可以使用UP和DOWN箭头键查看在终端中运行的...

    firstprogram:因为操“你好世界”。

    在我看来,这不是你应该用 Ruby 或任何语言编写的第一个程序: puts "Hello world!" 它应该看起来更像这样: print "Snoopizzler: " user_input = gets . chomp ; user_input . downcase! if user_input . ...

    aviglitch:一个用于销毁 AVI 文件的 Ruby 库

    它提供了一种操作每个 AVI 帧中数据的方法。 它将主要用于制作数据传输视频。 它仅解析容器级结构,不解析编解码器。 有关视觉故障的详细信息,请参阅以下网址; vimeo 维基百科用法 require 'aviglitch' avi = ...

    apple2_applesoft:JamtronixHTML Applesoft源代码的镜像

    Jamtronix编写了一个ruby脚本,将其全部放入一个文件中并链接所有功能。 html = "<PRE>" $< . each_line do | line | line . gsub! ( '<' , '<' ) if line =~ /^....-.{21} [J|B]...([A-Z] \S +) \s /...

    wombat:具有优雅DSL的轻量级Ruby Web爬网程序,可从页面提取结构化数据

    袋熊 带有优雅DSL的Web抓取工具,可解析来自网页的结构化数据。用法: gem install wombat 抓取页面: ... gsub ( /Explore/ , "Love" ) end features css : '.nav-item-opensource' business css : '.nav-item-busin

    vidibus-tempfile:将 mime 类型和文件扩展名添加到 Tempfile

    vidibus-临时文件 扩展的 Temfile 类允许具有正确 mime 类型和文件扩展名的临时文件。 这对于处理临时文件很有用。 部分 Tempfile 扩展名是从 Paperclip 复制的。 谢谢! 这个 gem 是开源 SOA 框架 Vidibus 的一部分...

    RbSwift:具有数百种便捷方法的Swift扩展

    大多数API和测试用例均来自和示例。 产品特点 转换函数支持Sequence , Array和Dictionary [ 1 , 2 , 3 , nil , nil , 4 , 5 , 6 , 7 ] . flatten () // => [1, 2, 3, 4, 5, 6, 7] . select { $0 > 2 } // => ...

    gemoji:表情符号图片和名称

    安装将gemoji添加到您的Gemfile中。 gem 'gemoji'示例Rails助手这样可以使内容生动化,例如: it's raining :cat:s and :dog:s! 有关更多示例,请参见。 module EmojiHelper def emojify ( content ) h ( content ) ...

    jwt_signed_request:轻松进行请求签名和验证

    JWT签署的请求 使用JWT请求对内部API进行签名和验证。...您可以根据应用程序的需要将签名和验证密钥添加到一个或多个密钥存储中。 例如,给定以下键: private_key = <<-PEM . gsub ( /^ \s +/

    insights-engine:每日见解的见解汇总器

    Coditsu洞察引擎 Coditsu Insights Engine允许我们获取有关当前存储库状态的“线性”相关详细信息。 它使我们能够获得在差异化过程中有用的信息,以及用于在UI中显示某些元数据的信息。... gsub

    omn​​iauth-ldap:OmniAuth的LDAP策略

    在应用程序中使用LDAP策略作为中间件: use OmniAuth::Strategies::LDAP, :title => "My LDAP", :host => '10.101.10.1', :port => 389, :method => :plain, :base => 'dc=intridea, dc=com', :uid => '...

    foreman_hiera_lookup:theforeman插件获取主机https的hiera变量的值

    工头希拉查找 这个插件可以帮助木偶开发人员调试hiera。 它向领班用户显示特定主机的Hiera变量值。... :YAML : " http://gitlab/puppet/puppet-hieradata/blob/#{level.gsub('environments/', '')}.y

Global site tag (gtag.js) - Google Analytics