[英]How to match multiple lines in ruby
這與多個“m”不匹配
a = "Im the prowerful man"
puts a.match(/(m)/im)[1]
以上代碼僅匹配第一個“m”
在perl中我通常會這樣做
$a =~ m/(m)/sig
如何在紅寶石中做同樣的事情
使用string.scan
而不是string.match
,其中match
函數將僅返回第一個匹配項。
> a = "Im the prowerful man"
> a.scan(/m/im)
=> ["m", "m"]
> a.scan(/(m)/im)
=> [["m"], ["m"]]
輸出中的多維數組是因為正則表達式中存在捕獲組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.