re = /^(\S+)\R(?=(?:\S+\R)*?\1$)/m
str = '3170059109_usilitel-sluha-sluhovoj.jpg
3170059111_usilitel-sluha-sluhovoj.jpg
3170059113_usilitel-sluha-sluhovoj.jpg
3170059109_usilitel-sluha-sluhovoj.jpg
3170059111_usilitel-sluha-sluhovoj.jpg
3170059113_usilitel-sluha-sluhovoj.jpg
3683880649_otpugivatel-myshej-pest.jpg
3175071494_otpugivatel-myshej-pest.jpg
3683880650_otpugivatel-myshej-pest.jpg
3683880651_otpugivatel-myshej-pest.jpg
3683880649_otpugivatel-myshej-pest.jpg
3175071494_otpugivatel-myshej-pest.jpg
3683880650_otpugivatel-myshej-pest.jpg
3683880651_otpugivatel-myshej-pest.jpg
3170117180_sportivnyj-topik-ah.jpg
3170117180_sportivnyj-topik-ah.jpg
'
subst = ''
result = str.gsub(re, subst)
# Print the result of the substitution
puts result
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html