[Solved] Ruby regex method


Use regex /r\d+=\d+/:

"http://test.com?t&r12=1&r122=1&r1=1&r124=1".scan(/r\d+=\d+/)
# => ["r12=1", "r122=1", "r1=1", "r124=1"]

"http://test.com?t&r12=1&r124=1".scan(/r\d+=\d+/)
# => ["r12=1", "r124=1"]

You can use join to get a string output. Here:

"http://test.com?t&r12=1&r122=1&r1=1&r124=1".scan(/r\d+=\d+/).join(',')
# => "r12=1,r122=1,r1=1,r124=1"

Update

If the URL contains other parameters that may include r in end, the regex can be made stricter:

a = []
"http://test.com?r1=2&r12=1&r122=1&r1=1&r124=1&ar1=2&tr2=3&xy4=5".scan(/(&|\?)(r+\d+=\d+)/) {|x,y|  a << y}
a.join(',')
# => "r12=1,r122=1,r1=1,r124=1"

0

solved Ruby regex method