記錄一下用 Ruby 解 HTML entities 的方法

有些業務上的事情,我想該自立自強時,還是得自己多撐著些…。

單位裡頭有批字符混雜了 HTML decimal entities 的 Big5 資料,要轉 UTF-8。至於這些字符為何會被轉成這種過渡形式編碼儲存,也正因為是時代的眼淚啊。(遠目)

用 [HTML Entities for Ruby] 來轉,或者 PHP 也有相關的 mb_decode_numericentity()html_entity_decode() 函式。因為有現成的資源,所以做起來還蠻簡單的:

#!/usr/bin/ruby -Ku

require ‘rubygems’
require ‘htmlentities’

coder = HTMLEntities.new
string = “臺灣氣象の梗槪”
p coder.decode(string)

不甚優雅的第一行,在 Ruby 1.9 有其它方式可以宣告指定程式使用 UTF-8,但是我還是怕麻煩,懶得把工作機的 Ruby 升版。

CC BY-SA 4.0 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Leave a Reply

Your email address will not be published. Required fields are marked *