Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perl 将base64编码邮件主题转换为文本_Perl_Unix_Procmail - Fatal编程技术网

Perl 将base64编码邮件主题转换为文本

Perl 将base64编码邮件主题转换为文本,perl,unix,procmail,Perl,Unix,Procmail,开始写一个简单的procmail回复,如果发现主题中的文本未显示,它会将邮件转发给我 :0: * ^Subject:.*Unprovisioned.* ! me@test.com 不幸的是,来自邮件服务器的邮件消息中的主题字段是MIME编码的单词语法 格式为:=?字符集?编码?编码文本?= 上面的主题是utf-8字符集,base64编码,文本折叠成两行。所以我想知道是否有任何机制/脚本/实用程序来解析它并转换为字符串格式,以便我可以应用procmail过滤器。当然,我可以编写一个perl脚本来

开始写一个简单的procmail回复,如果发现主题中的文本未显示,它会将邮件转发给我

:0:
* ^Subject:.*Unprovisioned.*
! me@test.com
不幸的是,来自邮件服务器的邮件消息中的主题字段是MIME编码的单词语法

格式为:=?字符集?编码?编码文本?=

上面的主题是utf-8字符集,base64编码,文本折叠成两行。所以我想知道是否有任何机制/脚本/实用程序来解析它并转换为字符串格式,以便我可以应用procmail过滤器。当然,我可以编写一个perl脚本来解析它并执行所需的验证,但如果可能的话,我会尽量避免它。

,perl附带的,直接通过Encode访问:

use Encode qw(encode decode);
my $header_text = decode('MIME-Header', $header);
,与Perl一起提供,可通过Encode直接访问:

use Encode qw(encode decode);
my $header_text = decode('MIME-Header', $header);

如果你碰到了像包裹头那样的边缘情况,考虑切换到解析消息。Tangentially,尾随。*是多余的。如果你碰到了像包裹头那样的边缘情况,考虑切换到解析消息。Tangentially,尾随。*是多余的。