Inglese Frase al nome del metodo inossidabile cammello
-
16-09-2020 - |
Domanda
Ho dovuto convertire una serie di frasi nei nomi dei metodi inossidati da cammelli.Ho finito a scrivere qualcosa per questo.Sono ancora curioso se c'è qualcosa di più semplice per questo.
Dato la stringa a = "This is a test."
Output thisIsATest
Ho usato per seguire:
a.downcase.gsub(/\s\w/){|b| b[-1,1].upcase }
. Soluzione
Non sono sicuro che sia meglio come la tua soluzione, ma dovrebbe fare il trucco:
>> "This is a test.".titleize.split(" ").join.camelize(:lower)
=> "thisIsATest."
.
- .
- titoloze: maiuscolo ogni prima lettera di ogni parola
- split (""). Join: crea un array con ogni parola e unisciti per spremere gli spazi
- Camelize (: inferiore): crea la prima lettera minuscola
Puoi trovare alcune funzioni più divertenti nei rotali Docs: http://api.rububyonrails.org/classes/activesupport/coreeextensions/String/inflections.html
Altri suggerimenti
"active_record".camelize(:lower)
.
Uscita: "ActiveRecord"
Usa questi
"Some string for you".gsub(/\s+/,'_').camelize(:lower) #=> "someStringForYou"
.
- .
- Gsub: Sostituisci gli spazi per DETERSCORES
- Camelize: Metodo simile a Java Camelcase
Potresti provare a utilizzare il gemma 'inglese', disponibile su http://english.rubyforge.org/
require 'english/case'
a = "This is a test."
a.camelcase().uncapitalize() # => 'thisIsATest
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow