今天,我仔细阅读了String
的文档,我看到了:sub
方法,这是我以前从未注意到的。我一直在使用:gsub
,看起来它们本质上是一样的。有人能给我解释一下其中的区别吗?谢谢!
发布于 2011-07-21 02:48:53
g
代表global,如替换全局(all):
在irb中:
>> "hello".sub('l', '*')
=> "he*lo"
>> "hello".gsub('l', '*')
=> "he**o"
发布于 2011-07-21 02:49:30
不同之处在于,sub
只替换指定模式的第一个匹配项,而gsub
对所有匹配项都执行此操作(即,它全局替换)。
发布于 2016-04-11 20:50:26
value = "abc abc"
puts value # abc abc
# Sub replaces just the first instance.
value = value.sub("abc", "---")
puts value # --- abc
# Gsub replaces all instances.
value = value.gsub("abc", "---")
puts value # --- ---
https://stackoverflow.com/questions/6766878
复制相似问题