in reply to Re^5: utf8 in perl
in thread utf8 in perl

2 days ago, I got an email with below subject

my $subject = "=?GB18030?B?XXXXXXXXXX?=";

then, When I ran the code, I got below error

Unknown encoding "GB18030" at /usr/lib64/perl5/Encode.pm line 174

I searched it. Then I came to know that GB 18030 is a Chinese government standard.

I found below 2 Urls

https://perldoc.perl.org/Encode/CN.html

https://stackoverflow.com/questions/6105316/how-to-convert-from-gbk-encoding-to-utf-8-encoding-in-perl

they talk about Encode::HanExtra

So, Added below line to my code. then, It started working.

use Encode::HanExtra;

So, Here's my UPDATED code. I think it's worth sharing...

#!/usr/bin/perl use strict; use warnings; use Encode qw(encode decode); use Encode::HanExtra; no warnings 'utf8'; my @subject = ("Room Rush \303\242\302\200\302\223 Enjoy 25% off on yo +ur stay. (raw: Room Rush =?utf-8?b?4oCT?= Enjoy 25% off on your stay. +)", "Last Day To Enjoy Extra 15% OFF On Everything For NDB Credit Cards (r +aw: =?utf-8?Q?Last=20Day=20To=20Enjoy=20Extra=2015%=20OFF=20On=20Ever +ything=20For=20NDB=20Credit=20Cards?=)", "Sing Along and Dance with Desmond De Silva at Pegasus Reef Hotel! (ra +w: =?utf-8?Q?Sing=20Along=20and=20Dance=20with=20Desmond=20De=20Silva +=20at=20Pegasus=20Reef=20Hotel=21?=)", "RE: Weekly Report (CommercialLegal) -\303\202\302\240 2 July 2018 to +5 July 2018 (raw: =?UTF-8?Q?RE:_Weekly_Report_=28CommercialLeg?=\t=?U +TF-8?Q?al=29_-=C2=A0_2_July_2018_to_5_July_201?=\t=)", "How are you", "=?GB18030?B?XXXXXXXXXX?="); for my $subj (@subject) { my $subject_decoded = decode("MIME-Header", $subj); print $subject_decoded; print "\n"; }

Have a nice day to all Perl Monks