拡張されたASCIIコード文字をPERLに表示するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/3753055

  •  04-10-2019
  •  | 
  •  

質問

alt text

192文字のシンボルを表示する方法 ( └ ) Perlで?

役に立ちましたか?

解決

あなたが望むのはUnicodeを印刷できるようにすることであり、答えは perldoc perluniintro.

使用できます \x{nnnn} ここで、nは六角識別子であるか、できるか、できる \N{...} 名前で:

perl -E 'say "\x{2514}"; use charnames; say "\N{BOX DRAWINGS LIGHT UP AND RIGHT}"'

他のヒント

これらのコードを正確に使用するには、端末がサポートする必要があります コードページ437, 、フレームが含まれています。または、派生を使用することもできます CP850 ボクシング文字が少ない。このようなボクシングキャラクターも次のように存在します Unicodeブロック要素. 。 Perlに必要なCharは、 \N{U+2514}. 。詳細 Perlunicode

これは、コードページ437エンコードのように見えます。 Perlは、おそらくあなたがそれを与えるバイトを出力するだけです。そして、あなたの端末はおそらくUTF8を期待しています。

したがって、それをUnicodeにデコードしてから、UTF-8で再エンコードする必要があります。

編集:正しいエンコード。

いつものように、ジョン・スキートはそれを釘付けにします 192 コードは「拡張ASCII「範囲。フォローすることをお勧めします @Douglas Leederのアドバイス, 、しかし、どのエンコードwww.lookuptables.comがあなたに与えているかはわかりません。 ISO-8859-1 192のマップを「à」と考えています Mac OS Roman その「¿」と考えています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top