Ruby 为什么我的字符串中有“=”而不是“\x”?
我正在解析电子邮件正文文本,我在电子邮件源中有以下内容: 多米尼克群岛=8个非里埃斯科国家的多样化经营许可证= 卡皮雷l=92esigenza e cosa=E8坎比亚托=20 我知道客户使用了字符集iso-8859-1。我还知道iso-8859-1中的Ruby 为什么我的字符串中有“=”而不是“\x”?,ruby,email,encoding,utf-8,escaping,Ruby,Email,Encoding,Utf 8,Escaping,我正在解析电子邮件正文文本,我在电子邮件源中有以下内容: 多米尼克群岛=8个非里埃斯科国家的多样化经营许可证= 卡皮雷l=92esigenza e cosa=E8坎比亚托=20 我知道客户使用了字符集iso-8859-1。我还知道iso-8859-1中的“\xE8”是utf-8中的章程: "\xE8".encode "UTF-8", "ISO-8859-1" # => "è" 为什么我发现“=E8”而不是“\xE8”?您需要首先从引用的可打印编码解码,然后从ISO-8859-1编码到UT
“\xE8”
是utf-8中的章程:
"\xE8".encode "UTF-8", "ISO-8859-1" # => "è"
为什么我发现
“=E8”
而不是“\xE8”
?您需要首先从引用的可打印编码解码,然后从ISO-8859-1编码到UTF-8:
string = "Questo dominio =E8 aperto e operativo da diversi anni, non riesco a = capire l=92esigenza e cosa =E8 cambiato.=20"
puts Mail::Encodings::QuotedPrintable.decode(string).encode('UTF-8', 'ISO-8859-1')
# => Questo dominio è aperto e operativo da diversi anni, non riesco a = capire l=92esigenza e cosa =E8 cambiato.=20
因为这是电子邮件特有的传输编码。你能进一步解释或给我一些链接吗?(很抱歉,我没有在我的应用程序通知中看到该链接)