本文简要介绍ruby语言中 String.split
的用法。
用法
split(pattern=nil, [limit]) → an_array
split(pattern=nil, [limit]) {|sub| block } → str
根据分隔符将str
划分为子字符串,返回这些子字符串的数组。
如果 pattern
是 String
,则在拆分 str
时将其内容用作分隔符。如果 pattern
是单个空格,则 str
在空白处拆分,前导和尾随空白以及连续空白字符的运行将被忽略。
如果 pattern
是 Regexp
,则 str
在模式匹配的地方被分割。每当模式与零长度字符串匹配时,str
就会被拆分为单个字符。如果pattern
包含组,则相应的匹配项也将在数组中返回。
如果 pattern
是 nil
,则使用 $;
的值。如果 $;
是 nil
(这是默认设置),则 str
在空格上拆分,就像指定了“ ”一样。
如果省略limit
参数,则禁止尾随空字段。如果limit
为正数,则最多返回该数量的拆分子字符串(也将返回捕获的组,但不计入限制)。如果 limit
是 1
,则整个字符串作为数组中的唯一条目返回。如果为负数,则返回的字段数没有限制,并且不抑制尾随的空字段。
当输入 str
为空时,将返回一个空的 Array
,因为该字符串被认为没有要拆分的字段。
" now's the time ".split #=> ["now's", "the", "time"]
" now's the time ".split(' ') #=> ["now's", "the", "time"]
" now's the time".split(/ /) #=> ["", "now's", "", "the", "time"]
"1, 2.34,56, 7".split(%r{,\s*}) #=> ["1", "2.34", "56", "7"]
"hello".split(//) #=> ["h", "e", "l", "l", "o"]
"hello".split(//, 3) #=> ["h", "e", "llo"]
"hi mom".split(%r{\s*}) #=> ["h", "i", "m", "o", "m"]
"mellow yellow".split("ello") #=> ["m", "w y", "w"]
"1,2,,3,4,,".split(',') #=> ["1", "2", "", "3", "4"]
"1,2,,3,4,,".split(',', 4) #=> ["1", "2", "", "3,4,,"]
"1,2,,3,4,,".split(',', -4) #=> ["1", "2", "", "3", "4", "", ""]
"1:2:3".split(/(:)()()/, 2) #=> ["1", ":", "", "", "2:3"]
"".split(',', -1) #=> []
如果给出了一个块,则使用每个拆分子字符串调用该块。
相关用法
- Ruby String.scan用法及代码示例
- Ruby String.size用法及代码示例
- Ruby String.scrub用法及代码示例
- Ruby String.string <=>用法及代码示例
- Ruby String.swapcase用法及代码示例
- Ruby String.setbyte用法及代码示例
- Ruby String.swapcase!用法及代码示例
- Ruby String.start_with?用法及代码示例
- Ruby String.string << object用法及代码示例
- Ruby String.scrub!用法及代码示例
- Ruby String.string + other_string用法及代码示例
- Ruby String.slice!用法及代码示例
- Ruby String.string =~ regexp用法及代码示例
- Ruby String.squeeze用法及代码示例
- Ruby String.succ用法及代码示例
- Ruby String.string % object用法及代码示例
- Ruby String.slice用法及代码示例
- Ruby String.strip!用法及代码示例
- Ruby String.string ===用法及代码示例
- Ruby String.strip用法及代码示例
- Ruby String.string ==用法及代码示例
- Ruby String.string[index]用法及代码示例
- Ruby String.string * integer用法及代码示例
- Ruby String.match?用法及代码示例
- Ruby String.unpack用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 String.split。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。