有沒有辦法在Ruby中使用gsub(或其他)來代替一個字符串與其十六進制等效?在MySQL中你會做這樣的事情:紅寶石替換與十六進制等效的HTML實體
self.connection.execute("UPDATE `dvd_actor` SET actor = replace(actor, '£,', CHAR(163));")
我在Rails的重寫本,並使用GSUB,這樣的事情:
self.actor = actor.gsub(/£/, "£").strip if actor =~ /£/
但我已經把所有與十六進制寫的行字符和我試圖避免找出哪些字符是哪些(其中一些需要複製/粘貼,因爲我沒有在英文鍵盤中)。
我想這(我在後在這裏看到的):
actor.gsub(/"/) { "0x134".hex } if actor =~ /"/
但是,這並不做的伎倆,它產生的一個數字。
或者更好的是,也許有一個寶石已經這樣做?基本上採取HTML值並解決它們?哦,那很好。
0x134「.hex.to_s(16)'做成了嗎? – philant 2012-01-16 16:44:43