SORU
9 EYLÜL 2010, PERŞEMBE


Ruby 1.9 - geçersiz boş char (US-ASCII)

İm (2.3.5) Ruby 1.9, ben çalıştırmak için raylar başvurumu yapmaya çalışıyorum ... bir dize üzerinde bazı dönüşümler yapmak, bu fonksiyonu

def replace_special_chars(downcase = true)
if downcase 
  string = self.downcase
else
  string = self
end
string.gsub! /á|ã|à|ä|â/, 'a'
string.gsub! /é|è|ë|ê/, 'e'
string.gsub! /í|ì|ï|î/, 'i'
string.gsub! /ó|õ|ò|ô|ö/, 'o'
string.gsub! /ú|ù|ü|û/, 'u'
string.gsub! /ç/, 'c'
string.gsub! /&/, 'e'
string.gsub! /\s/, '-'
string.gsub! /[^a-zA-Z_0-9-]/, ''
string.gsub! /-(-) /, '-'
string
end

Ama sunucu başlatmaya çalıştığımda bu hata var:

<internal:lib/rubygems/custom_require>:29:in `require':   
/Users/.../lib/nzn_string.rb:11: invalid multibyte char (US-ASCII) (SyntaxError)
/Users/.../lib/nzn_string.rb:11: invalid multibyte char (US-ASCII) 
/Users/.../lib/nzn_string.rb:11: syntax error, unexpected $end, expecting keyword_end
string.gsub! /á|ã|à|ä|â/, 'a'
                ^

:29: `ihtiyaç'

Ruby 1.9 üzerinde bunu yapmak için doğru yolu nedir? Burada eksik olan ne im bilmiyorum

CEVAP
9 EYLÜL 2010, PERŞEMBE


Bu dosya üzerinde # encoding: utf-8 yazın. Bu dosya utf-8 tüm dize/regexp rakamları varsayılan kodlamayı değiştirir. Tüm harfleri için varsayılan kodlama olamaz á temsil US-ASCII,.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AmazonWireless

    AmazonWirele

    8 EYLÜL 2010
  • Codecourse

    Codecourse

    3 ŞUBAT 2009
  • New Challenger - Game Reviews

    New Challeng

    20 Temmuz 2006