value = "Men - $30, Women - $20"
# value = "Men - 0"
# value = "free"
data = /\$(\d*)/.match value
Run Code Online (Sandbox Code Playgroud)
目前:
data.to_a
=> ["$30", "30"]
Run Code Online (Sandbox Code Playgroud)
我想要:
data.to_a
=> ["$30", "30", "$20", "20]
Run Code Online (Sandbox Code Playgroud)
如何实现这一目标
运用 String#scan
value = "Men - $30, Women - $20"
value.scan(/(\$(\d+))/)
# => [["$30", "30"], ["$20", "20"]]
value.scan(/(\$(\d+))/).flatten
# => ["$30", "30", "$20", "20"]
Run Code Online (Sandbox Code Playgroud)