re = /^(?<cpf>[0-9]{11})(?<nome>[^\n]{32})(?<end>[^\n]{28})(?<comp>[^\n]{8})(?<cidade>[^\n]{13})(?<uf>[^\n]{2})$/m
str = '12345678912primeiro nome do cliente endereço 1 comp 1 cidade 1 SP
12345678912segundo nome do cliente endereço 2 comp 2 cidade 2 MG'
# 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