我正在研究一个从一个软件调用的CGI脚本(我无法改变).软件提交的变量给我带来了问题,因为如果它们包含非ascii字符,它们看起来像这样:
ÿFFFFDEetta er texti meÿFFFFF0 ÿFFFFEDslenskum stÿFFFFF6fum
代替
Þetta er texti með íslenskum stöfum.
我已经尝试搞乱这个Encode::decode功能,但没有任何结果 - 我所要做的就是改变ÿ代表的方式.
所以,是的,我有点难过.如何将所有ÿFFFFDEs 更改为Þs等等,而不是单独替换每个非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 'Þetta er texti með íslenskum stöfum'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
727 次 |
| 最近记录: |