Ruby 正则表达式:捕获重叠模式

Ruby 正则表达式:捕获重叠模式,ruby,regex,regex-group,Ruby,Regex,Regex Group,我希望捕获我的模式的所有组合,即使它是重叠的 示例文本 Match 1 - pack my box 12345 pack my Match 2 - pack my box 67890 blah bl Match 3 - pack my box 99999 is pres 打包我的盒子12345打包我的盒子67890等等等等很远的另一个打包我的盒子99999存在 预期产出 Match 1 - pack my box 12345 pack my Match 2 - pack my box 6789

我希望捕获我的模式的所有组合,即使它是重叠的

示例文本

Match 1 - pack my box 12345 pack my
Match 2 - pack my box 67890 blah bl
Match 3 - pack my box 99999 is pres
打包我的盒子12345打包我的盒子67890等等等等很远的另一个打包我的盒子99999存在

预期产出

Match 1 - pack my box 12345 pack my
Match 2 - pack my box 67890 blah bl
Match 3 - pack my box 99999 is pres
Regex

/收拾我的箱子。{0,14}/

但是,
匹配2
不会输出,因为它与1重叠

显然,这是一个更大问题的版本。

找到了答案(参考重复文章)

(?=(打包我的盒子。{0,14}))


它适用于
scan
,但不适用于
gsub
。这些匹配实际上是空的。啊,谢谢你提供的信息。我实际上是在为
scan
寻找解决方案。很高兴知道它不会工作
gsub