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


Ruby String.match用法及代碼示例


本文簡要介紹ruby語言中 String.match 的用法。

用法

match(pattern, offset = 0) → matchdata or nil
match(pattern, offset = 0) {|matchdata| ... } → object

根據 self 和給定的 pattern 返回 Matchdata 對象(或 nil )。

注意:還更新 Regexp-related global variables

  • 通過轉換pattern(如果還不是正則表達式)計算regexp

    regexp = Regexp.new(pattern)
  • 計算 matchdata ,這將是一個 MatchData 對象或 nil(參見 Regexp#match ):

    matchdata = <tt>regexp.match(self)

沒有給出塊,返回計算的 matchdata

'foo'.match('f') # => #<MatchData "f">
'foo'.match('o') # => #<MatchData "o">
'foo'.match('x') # => nil

如果給出整數參數 offset,則搜索從索引 offset 開始:

'foo'.match('f', 1) # => nil
'foo'.match('o', 1) # => #<MatchData "o">

給定一個塊,使用計算的matchdata調用該塊並返回該塊的返回值:

'foo'.match(/o/) {|matchdata| matchdata } # => #<MatchData "o">
'foo'.match(/x/) {|matchdata| matchdata } # => nil
'foo'.match(/f/, 1) {|matchdata| matchdata } # => nil

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 String.match。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。