def linha_digitavel
      if self =~ /^(\d{4})(\d{1})(\d{14})(\d{5})(\d{10})(\d{10})$/
        linha = Regexp.last_match[1]
        linha << Regexp.last_match[4]
        linha << linha.modulo10.to_s
        linha << Regexp.last_match[5]
        linha << Regexp.last_match[5].modulo10.to_s
        linha << Regexp.last_match[6]
        linha << Regexp.last_match[6].modulo10.to_s
        linha << Regexp.last_match[2]
        linha << Regexp.last_match[3]
        linha.gsub(/^(.{5})(.{5})(.{5})(.{6})(.{5})(.{6})(.{1})(.{14})$/, '\1.\2 \3.\4 \5.\6 \7 \8')
      else
        raise ArgumentError, "#{self} Precisa conter 44 caracteres numéricos."
      end
    end
def linha_digitavel
      if self =~ /^(\d{4})(\d{1})(\d{14})(\d{5})(\d{10})(\d{10})$/
        linha = Regexp.last_match[1]
        linha << Regexp.last_match[4]
        linha << linha.modulo10.to_s
        linha << Regexp.last_match[5]
        linha << Regexp.last_match[5].modulo10.to_s
        linha << Regexp.last_match[6]
        linha << Regexp.last_match[6].modulo10.to_s
        linha << Regexp.last_match[2]
        linha << Regexp.last_match[3]
        linha.gsub(/^(.{5})(.{5})(.{5})(.{6})(.{5})(.{6})(.{1})(.{14})$/, '\1.\2 \3.\4 \5.\6 \7 \8')
      else
        raise ArgumentError, "#{self} Precisa conter 44 caracteres numéricos."
      end
    end
Monta a linha digitável padrão para todos os bancos segundo a BACEN.

 A linha digitável será composta por cinco campos:<br/>
 <b>1º campo</b>: <br/>
 Composto pelo código de Banco, código da moeda, as cinco primeiras posições do campo livre
 e o dígito verificador deste campo.<br/>
 <b>2º campo</b>: <br/>
 Composto pelas posições 6ª a 15ª do campo livre e o dígito verificador deste campo.<br/>
 <b>3º campo</b>: <br/>
 Composto pelas posições 16ª a 25ª do campo livre e o dígito verificador deste campo.<br/>
 <b>4º campo</b>: <br/>
 Composto pelo dígito verificador do código de barras, ou seja, a 5ª posição do código de barras.<br/>
 <b>5º campo</b>: <br/>
 Composto pelo fator de vencimento com 4(quatro) caracteres e o valor do documento com
 10(dez) caracteres, sem separadores e sem edição.<br/>

 @return [String]
 @raise  [ArgumentError] Caso não seja um número de 44 dígitos.
 @example
  "00192376900000135000000001238798777770016818".linha_digitavel #=> "00190.00009 01238.798779 77700.168188 2 37690000013500"