当与哈希一起使用时,我在“gsub”的第一个参数中放了什么



您可以在gsub的第二个参数中使用哈希。我看到的所有例子通常在第一个参数中都有我不理解的东西,例如:

def doctorize(string)
  string.gsub(/M(iste)?r/, 'Mister' => 'Doctor', 'Mr' => 'Dr')
end
doctorize('Mister Freeze') # => 'Doctor Freeze'
doctorize('Mr Smith')   # => 'Dr Smith'

如果有人能解释这一点,我很感激。谁能帮忙?

第一个参数始终只是一个正则表达式。正则表达式上的 Ruby 文档对 Ruby 中的正则表达式有一个很好的解释。或者在一般情况下搜索"正则表达式"或"正则表达式"。

在链接的文章中,第一个是"字符类"([leto]将匹配任何单个字符leto),第二个是"组"或"捕获组"与"0或1次"量词组合((ister)将匹配字符串"ister"作为一个组,?意味着整个组可能出现0或一次, 因此,正则表达式 M(ister)?r 将匹配 "先生" 或 "先生")。

相关内容

  • 没有找到相关文章

最新更新