當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。