当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Regexp.last_match用法及代码示例


本文简要介绍ruby语言中 Regexp.last_match 的用法。

用法

last_match → matchdata
last_match(n) → str

第一种形式返回最后一次成功的模式匹配生成的 MatchData 对象。相当于读取特殊全局变量$~(详见 Regexp 中的特殊全局变量)。

第二种形式返回此 MatchData 对象中的第 n 字段。 n 可以是引用命名捕获的字符串或符号。

请注意, last_match 对于进行模式匹配的方法的线程和方法范围是本地的。

/c(.)t/ =~ 'cat'        #=> 0
Regexp.last_match       #=> #<MatchData "cat" 1:"a">
Regexp.last_match(0)    #=> "cat"
Regexp.last_match(1)    #=> "a"
Regexp.last_match(2)    #=> nil

/(?<lhs>\w+)\s*=\s*(?<rhs>\w+)/ =~ "var = val"
Regexp.last_match       #=> #<MatchData "var = val" lhs:"var" rhs:"val">
Regexp.last_match(:lhs) #=> "var"
Regexp.last_match(:rhs) #=> "val"

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Regexp.last_match。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。