re = /}(\R).*(?1).*}((?1)|$)/
str = 'está no fim da linha -> }
qualquer texto, \\" blablá etc
linha } <- não está no final da linha, deve pular
está no fim da linha, mas tem mais de uma linha entre esse e o primeiro }
asdasdasasdsaeeeee
{
aaaaaa
adsasdassdasdfff } <- não está no final da linha, não deve pegar
qualquer texto, \\" blablá etc
asdasdasasdsa
fim da linha -> }
apenas uma linha, \\", á´bcetc
esse vai pegar }'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
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