悩めば悩むほどに、コードを書き直していますが・・・

対象(target)の文字列が
"abcdefghijklmn"
で、あるとき

str = getStringRange (target, /(cdef)(gh)/, 2, 3);
str[0]::efg
str[1]::ef
str[2]::g

と、なるべきなんですよね?!
親(0)の範囲を、子(1)(2)が飛び越えては、まずいですよね?

gtlt さん、教えて〜!