Ruby不识别正则表达式的g标志

时间:2010-02-18 23:30:57

标签: ruby regex

默认情况下是否隐含在str.scan中?默认情况下它是否在str [regex]中关闭?

2 个答案:

答案 0 :(得分:7)

是的,应用正则表达式的频率取决于使用的方法,而不是正则表达式的标志。

scan将返回一个包含(或迭代)正则表达式的所有匹配项的数组。匹配和String#[]将返回第一场比赛。 =~将返回第一个匹配的索引。 gsub将替换所有出现的正则表达式,sub将替换第一次出现。

答案 1 :(得分:3)

smotchkkiss:~$ irb
>> 'Foobar does not like food because he is a fool'.gsub(/foo/i, 'zim')
=> "zimbar does not like zimd because he is a ziml"