str = "2foofoo"
str =~ /(\d)/
str =~ /\d(foo){#{$1}}/
=>0

2行に分ければできるけど、1行でできるのかな?