SORU
15 NİSAN 2010, PERŞEMBE


Dize yalnızca ilk karakteri büyük harfe Çevir ve diğerleri yalnız mı bırakayım? (Raylar)

Raylar bir dizenin ilk karakteri büyük harf yazmak için, ve diğerleri onlar gibi terk etmeye çalışıyorum. "Ben New york'luyum" "ben new york'luyum." evine döndü nerede bir sorun haline çalıştırıyorum

Ne yöntemi ilk karakteri seçmek için kullanabilir miyim?

Teşekkürler

DÜZENLEME:Macek önerilen şeyi uygulamaya çalıştım ama bir alıyorum< . em ^"tanımsız yöntem `büyük harfe çevir" .' hata. Kod satırı yararlanmak olmadan gayet iyi çalışıyor. Yardım için teşekkürler!

def fixlistname!
  self.title = self.title.lstrip   (title.ends_with?("...") ? "" : "...")
  self.title[0] = self.title[0].capitalize
  errors.add_to_base("Title must start with \"You know you...\"") unless self.title.starts_with? 'You know you'
end

EDİT 2:Çalışma var. Yardım için teşekkürler!

EDİT 3:Bekle, hayır... Burada liste benim model içinde ne var bilmiyordum.

def fixlistname!
  self.title = self.title.lstrip   (title.ends_with?("...") ? "" : "...")
  self.title.slice(0,1).capitalize   self.title.slice(1..-1)
  errors.add_to_base("Title must start with \"You know you...\"") unless self.title.starts_with?  'You know you'
end

EDİT 4:Denedim macek düzenlemek, ve hala büyüyortanımsız yöntemi `büyük harfe çevir" .' hata. Ben yanlış ne yapıyor olabilir?

def fixlistname!
  self.title = title.lstrip
  self.title  = '...' unless title.ends_with?('...')
  self.title[0] = title[0].capitalize
  errors.add_to_base('Title must start with "You know you..."') unless title.starts_with?("You know you")
end

EDİT 5:Bu garip. Aşağıda satırını kullanarak tanımsız yöntemi hata vermeye çalışıyorum. Sorun sayıda ilk harfini değiştirmek gibi görünüyor olmasıdır. Bu sermaye yerine örneğinySana, dönerybir 121

self.title[0] = title[0].to_s.capitalize

CEVAP
15 NİSAN 2010, PERŞEMBE


Titleize her kelimeyi yararlanmak olacaktır. Bu hat ağır geliyor, ama tek harfi değiştirilmiş bir garanti.

new_string = string.slice(0,1).capitalize   string.slice(1..-1)

Güncelleme:

irb(main):001:0> string = "i'm from New York..."
=> "i'm from New York..."
irb(main):002:0> new_string = string.slice(0,1).capitalize   string.slice(1..-1)
=> "I'm from New York..."

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ipsy Makeup Tips

    ipsy Makeup

    19 ŞUBAT 2009
  • Tire Rack

    Tire Rack

    31 Mayıs 2007
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011