Ruby Regex用于字符串中的重复数字
如果我有一个像"123123123"
这样的字符串 – 这里123
重复3次。
那么我怎样才能在ruby中只获得"123"
?
2.所以如果字符串是"12312312"
– 这里123
重复2次然后只有12
,所以这里仍然需要得到"123"
。
3.即使字符串是99123123123
,我仍然需要获得123
。
这可能在Ruby Regex中有用吗?
编辑:我希望这能解决Project Euler Problem 26 。 所以这里123
可以是任何东西。 我想要的是提取1个至少2个重复数字。
此正则表达式将检测所有重复组。
(\d+)(?=.*\1)
演示
与ruby一起使用也很棒。
result = '9912341234123'.scan(/(\d+)(?=.*\1)/) #gets group with largest length longestRepeatingGroup = result.max_by{|arr| arr[0].length} puts longestRepeatingGroup puts longestRepeatingGroup[0].length
试试这个
99123123123.scan(/123/).count 12312312.scan(/123/).count