本文简要介绍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 String.match?用法及代码示例
- Ruby String.unpack用法及代码示例
- Ruby String.scan用法及代码示例
- Ruby String.dump用法及代码示例
- Ruby String.oct用法及代码示例
- Ruby String.size用法及代码示例
- Ruby String.scrub用法及代码示例
- Ruby String.to_sym用法及代码示例
- Ruby String.chop用法及代码示例
- Ruby String.bytesize用法及代码示例
- Ruby String.count用法及代码示例
- Ruby String.string <=>用法及代码示例
- Ruby String.ascii_only?用法及代码示例
- Ruby String.downcase用法及代码示例
- Ruby String.capitalize用法及代码示例
- Ruby String.length用法及代码示例
- Ruby String.lines用法及代码示例
- Ruby String.unicode_normalize用法及代码示例
- Ruby String.center用法及代码示例
- Ruby String.casecmp用法及代码示例
- Ruby String.index用法及代码示例
- Ruby String.each_line用法及代码示例
- Ruby String.capitalize!用法及代码示例
- Ruby String.swapcase用法及代码示例
- Ruby String.setbyte用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 String.match。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。