加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl:解码“乱码”unicode字符串

发布时间:2020-12-16 06:18:28 所属栏目:大数据 来源:网络整理
导读:我正在研究一个从一个软件调用的CGI脚本(我无法改变).软件提交的变量给我带来了问题,因为如果它们包含非ascii字符,它们看起来像这样: ?FFFFDEettaertextime?FFFFF0?FFFFEDslenskum?FFFFF6fum 代替 Tettaertextimeeíslenskumst?fum. 我已经尝试过使用Encode
我正在研究一个从一个软件调用的CGI脚本(我无法改变).软件提交的变量给我带来了问题,因为如果它们包含非ascii字符,它们看起来像这样:

?FFFFDEettaertextime?FFFFF0?FFFFEDslenskum?FFFFF6fum

代替

Tettaertextimeeíslenskumst?fum.

我已经尝试过使用Encode :: decode函数,但没有任何结果 – 我所要做的就是改变?的表示方式.

所以,是的,我有点难过.如何将所有?FFFF变为T等等,而不是单独替换每个非ascii字符(这不是解决方案,因为这需要适用于我甚至不会说的语言)?

解决方法

use Encode qw(decode);
use Encode::Escape qw();

$_ = '?FFFFDEetta er texti me?FFFFF0 ?FFFFEDslenskum st?FFFFF6fum';
s/?FFFF/x/g;
decode('iso-8859-1',decode('unicode-escape',$_));
# returns 'Tetta er texti mee íslenskum st?fum'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读