有没有办法在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