Class String
In: brstring/lib/brstring/string_portuguese.rb
Parent: Object

Methods

Constants

MINUSCULAS_COM_ACENTO = 'áéíóúâêîôûàèìòùäëïöüãõñç'
MAIUSCULAS_COM_ACENTO = 'ÁÉÍÓÚÂÊÎÔÛÀÈÌÒÙÄËÏÖÜÃÕÑÇ'
MINUSCULAS = "abcdefghijklmnopqrstuvwxyz#{MINUSCULAS_COM_ACENTO}"
MAIUSCULAS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ#{MAIUSCULAS_COM_ACENTO}"

Public Class methods

Retorna uma string com caracteres minúsculos

Exemplo:

 String.downcase('TEXTO COM ACENTUAÇÃO') ==> 'texto com acentuação'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 97
 97:   def self.downcase(texto)
 98:     return texto if texto.blank?
 99:     texto.tr(MAIUSCULAS, MINUSCULAS)
100:   end

Normaliza nomes proprios

Exemplo:

 String.nome_proprio('maria de souza dos santos e silva da costa') ==> 'Maria de Souza dos Santos e Silva da Costa'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 12
12:   def self.nome_proprio(texto)
13:     return texto if texto.blank?
14:     self.titleize(texto).gsub(/ D(a|e|o|as|os) /, ' d\1 ').gsub(/ E /, ' e ')
15:   end

Remove as letras acentuadas

Exemplo:

 String.remover_acentos('texto está com acentuação') ==> 'texto esta com acentuacao'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 39
39:   def self.remover_acentos(texto)
40:     return texto if texto.blank?
41:     texto = texto.gsub(/[á|à|ã|â|ä]/, 'a').gsub(/(é|è|ê|ë)/, 'e').gsub(/(í|ì|î|ï)/, 'i').gsub(/(ó|ò|õ|ô|ö)/, 'o').gsub(/(ú|ù|û|ü)/, 'u')
42:     texto = texto.gsub(/(Á|À|Ã|Â|Ä)/, 'A').gsub(/(É|È|Ê|Ë)/, 'E').gsub(/(Í|Ì|Î|Ï)/, 'I').gsub(/(Ó|Ò|Õ|Ô|Ö)/, 'O').gsub(/(Ú|Ù|Û|Ü)/, 'U')
43:     texto = texto.gsub(/ñ/, 'n').gsub(/Ñ/, 'N')
44:     texto = texto.gsub(/ç/, 'c').gsub(/Ç/, 'C')
45:     texto
46:   end

Passa a primeira letra de cada palavra para maiúscula e as demais para minúsculas.

Exemplo:

 String.titleize('o livro esta sobre a mesa!') ==> 'O Livro Esta Sobre A Mesa!'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 124
124:   def self.titleize(texto)
125:     return texto if texto.blank?
126:     texto = texto.downcase
127:     texto.chars[0] = texto.chars.first.upcase
128:     texto = texto.gsub(/\s[a-z#{String::MINUSCULAS_COM_ACENTO}]/) {|a| a.upcase }
129:     texto
130:   end

Retorna uma string com caracteres maiusculos

Exemplo:

 String.upcase('texto com acentuação' ==> 'TEXTO COM ACENTUAÇÃO'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 70
70:   def self.upcase(texto)
71:     return texto if texto.blank?
72:     texto.tr(MINUSCULAS, MAIUSCULAS)
73:   end

Public Instance methods

Retorna uma string com caracteres minúsculos

Exemplo:

 'TEXTO COM ACENTUAÇÃO'.downcase ==> 'texto com acentuação'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 106
106:   def downcase
107:     String.downcase(self)
108:   end

Converte para caracteres minúsculos na própria instância

Exemplo:

 texto = 'TEXTO COM ACENTUAÇÃO'
 texto.downcase
 texto ==> 'texto com acentuação'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 116
116:   def downcase!
117:     self.gsub!(/^.*$/, String.downcase(self)) if self
118:   end

Normaliza nomes proprios

Exemplo:

 'maria de souza dos santos e silva da costa'.nome_proprio ==> 'Maria de Souza dos Santos e Silva da Costa'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 21
21:   def nome_proprio
22:     String.nome_proprio(self)
23:   end

Normaliza nomes proprios na própria instância.

Exemplo:

 texto = 'maria de souza dos santos e silva da costa'
 texto.nome_proprio!
 texto ==> 'Maria de Souza dos Santos e Silva da Costa'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 31
31:   def nome_proprio!
32:     self.gsub!(/^.*$/, String.nome_proprio(self)) if self
33:   end

Remove as letras acentuadas

Exemplo:

 'texto está com acentuação'.remover_acentos ==> 'texto esta com acentuacao'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 52
52:   def remover_acentos
53:     String.remover_acentos(self)
54:   end

Remove as letras acentuadas na própria instância.

Exemplo:

 texto = 'texto está com acentuação'
 texto.remover_acentos!
 texto ==> 'texto esta com acentuacao'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 62
62:   def remover_acentos!
63:     self.gsub!(/^.*$/, String.remover_acentos(self)) if self
64:   end

Passa a primeira letra de cada palavra para maiúscula e as demais para minúsculas.

Exemplo:

 'o livro esta sobre a mesa!'.titleize ==> 'O Livro Esta Sobre A Mesa!'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 136
136:   def titleize
137:     String.titleize(self)
138:   end

Passa a primeira letra de cada palavra para maiúscula e as demais para minúsculas na própria instância.

Exemplo:

 texto = 'o livro esta sobre a mesa!'
 texto.titleize!
 texto ==> 'O Livro Esta Sobre A Mesa!'

[Source]

     # File brstring/lib/brstring/string_portuguese.rb, line 146
146:   def titleize!
147:     self.gsub!(/^.*$/, String.titleize(self)) if self
148:   end

Retorna uma string com caracteres maiusculos

Exemplo:

 'texto com acentuação'.upcase ==> 'TEXTO COM ACENTUAÇÃO'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 79
79:   def upcase
80:     String.upcase(self)
81:   end

Converte para caracteres maiusculos na própria instância

Exemplo:

 texto = 'texto com acentuação'
 texto.upcase
 texto ==> 'TEXTO COM ACENTUAÇÃO'

[Source]

    # File brstring/lib/brstring/string_portuguese.rb, line 89
89:   def upcase!
90:     self.gsub!(/^.*$/, String.upcase(self)) if self
91:   end

[Validate]