我試圖從DB遷移中的某些用戶名創建一個slug。UTF-8的gsub編碼問題
nick = nick.gsub('á','a')
我真的很想換éíóúñ
到eioun
。
這樣做,它不工作,我會得到:
不兼容的編碼正則表達式匹配(UTF-8正則表達式與ASCII-8BIT字符串)(編碼:: CompatibilityError)
但是,無論我做什麼,例如通過增加force_encoding方法,我總是得到這樣的編碼錯誤:在
無效字節序列UTF-8(引發ArgumentError)
「\ XF3」 從ASCII-8BIT爲UTF-8(編碼:: UndefinedConversionError)
不兼容的字符編碼:ASCII-8BIT和UTF-8(編碼:: CompatibilityError)
這只是當我有一個gsub改變那些聲樂或西班牙語字母時發生。
我的文件上還有一個encoding: utf-8
行,數據來自UTF-8數據庫。但似乎沒有任何幫助。
我已經看到了一些關於這個問題,但我試圖做的任何事情都不能解決它。
順便說一句,這不是鐵軌相關的。
你使用哪個ruby版本? – tessi
我使用** Ruby 1.9.3 ** – pzin
這組有趣的編程任務和一組編碼相關的編程任務之間沒有交集。 – tessi