Ruby:
Capitalizzare una stringa
Come fare:
Ruby fornisce metodi diretti per la manipolazione delle stringhe, inclusa la capitalizzazione:
# Metodo integrato di Ruby
string = "ciao MONDO"
capitalized_string = string.capitalize
puts capitalized_string # => "Ciao mondo"
Molto pratico.
Il metodo .capitalize
di Ruby è comodo ma mette in maiuscolo solo la prima lettera. Per un maggiore controllo o per capitalizzare ogni parola in una stringa (noto come caso del titolo), potresti voler utilizzare il metodo titleize
dall’estensione ActiveSupport di Rails, o implementarlo tu stesso:
# Usando 'titleize' di ActiveSupport in Rails
require 'active_support/core_ext/string/inflections'
string = "ciao mondo"
puts string.titleize # => "Ciao Mondo"
# Una soluzione fatta in casa
string = "ciao mondo"
capitalized_each_word = string.split.map(&:capitalize).join(' ')
puts capitalized_each_word # => "Ciao Mondo"
Questo metodo divide la stringa in un array di parole, capitalizza ciascuna di esse, poi le riunisce insieme con uno spazio.
Personalmente, porto questa idea molto più lontano nel mio codice. Ho scritto il mio metodo titleize
che tiene conto di parole piccole come “a” e “the”.