Ruby .match方法相对于其参数是如何工作的?
我正在通过网站RubyMonk.com(据我所知,这是一个很棒的网站)学习如何用Ruby编程 我在理解正则表达式的概念以及它如何与.match方法一起工作时遇到了一些困难Ruby .match方法相对于其参数是如何工作的?,ruby,methods,arguments,Ruby,Methods,Arguments,我正在通过网站RubyMonk.com(据我所知,这是一个很棒的网站)学习如何用Ruby编程 我在理解正则表达式的概念以及它如何与.match方法一起工作时遇到了一些困难 'RubyMonk Is Pretty Brilliant'.match(/ ./, 9) .match中参数的用途是什么 .match中参数的用途是什么 阅读 将模式转换为Regexp(如果它还不是一个),然后在str上调用它的match方法。如果第二个参数存在,它将指定字符串中开始搜索的位置 因此,在您的示例中,#mat
'RubyMonk Is Pretty Brilliant'.match(/ ./, 9)
.match中参数的用途是什么
.match中参数的用途是什么
阅读
将模式转换为Regexp(如果它还不是一个),然后在str上调用它的match方法。如果第二个参数存在,它将指定字符串中开始搜索的位置
因此,在您的示例中,
#match
将从WARD上的第10个字符或第9个位置开始工作。的可选参数是指定搜索开始的起始位置:
'RubyMonk Is Pretty Brilliant'.match(/ ./, 0)
# => #<MatchData " I">
'RubyMonk Is Pretty Brilliant'.match(/ ./, 9)
# => #<MatchData " P">
'RubyMonk Is Pretty Brilliant'.match(/ ./, 12)
# => #<MatchData " B">
“RubyMonk非常出色”。匹配(/。/,0)
# => #
“RubyMonk非常出色”。匹配(/。/,9)
# => #
“RubyMonk非常出色”。匹配(/。/,12)
# => #