本文簡要介紹ruby語言中 String.scan
的用法。
用法
scan(pattern) → array
scan(pattern) {|match, ...| block } → str
兩種形式都遍曆 str
,匹配模式(可能是 Regexp
或 String
)。對於每個匹配,都會生成一個結果並將其添加到結果數組或傳遞給塊。如果模式不包含任何組,則每個單獨的結果都包含匹配的字符串 $&
。如果模式包含組,則每個單獨的結果本身就是一個數組,每個組包含一個條目。
a = "cruel world"
a.scan(/\w+/) #=> ["cruel", "world"]
a.scan(/.../) #=> ["cru", "el ", "wor"]
a.scan(/(...)/) #=> [["cru"], ["el "], ["wor"]]
a.scan(/(..)(..)/) #=> [["cr", "ue"], ["l ", "wo"]]
和塊形式:
a.scan(/\w+/) {|w| print "<<#{w}>> " }
print "\n"
a.scan(/(.)(.)/) {|x,y| print y, x }
print "\n"
產生:
<<cruel>> <<world>> rceu lowlr
相關用法
- Ruby String.scrub用法及代碼示例
- Ruby String.scrub!用法及代碼示例
- Ruby String.size用法及代碼示例
- Ruby String.string <=>用法及代碼示例
- Ruby String.swapcase用法及代碼示例
- Ruby String.setbyte用法及代碼示例
- Ruby String.swapcase!用法及代碼示例
- Ruby String.start_with?用法及代碼示例
- Ruby String.string << object用法及代碼示例
- Ruby String.string + other_string用法及代碼示例
- Ruby String.slice!用法及代碼示例
- Ruby String.string =~ regexp用法及代碼示例
- Ruby String.split用法及代碼示例
- 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.scan。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。