从导入的电子邮件中查找潜在的UTF-8字符的最佳方法

时间:2018-09-04 03:45:20

标签: ruby

因此,当您查看电子邮件的来源时,其中的几个字符应由电子邮件客户端转换回UTF-8。

例如,在Outlook中,源电子邮件可能包含=C2=A9,该电子邮件会转换为版权符号。

在ruby中,是否可以找到这些类型的字符/图案并将它们转换为HTML,以便以HTML形式显示?例如,采用=C2=A9之类的东西并将其转换为与其关联的HTML格式©

1 个答案:

答案 0 :(得分:1)

有两件事要考虑。首先,使用=的原始字符串格式称为“ quoted-printable”。强制使用UTF-8编码。然后,使用htmlentities转换为HTML实体。这是一个示例:

require 'htmlentities'
coder = HTMLEntities.new
string = '=C2=A9'.unpack("M").first.force_encoding('UTF-8')

coder.encode(string) # => "©"
coder.encode(string, :named) # => "©"

希望您会有所帮助。