• ベストアンサー

改行コード変換

先に「chompの使い方」で質問したものです。 文字コードを調べたところ、改行が「^M」で表示されていました。 テキスト文書ファイルもCGIプログラムも文字コードはEUCにしてありますし、改行コードもLFにしているんですが、フォームで入力される改行コードはCR+LFになっているようです。 これはどうやって制御すれば(全ての改行をLFにする)よいのでしょうか? ご教示いただけるとうれしいです。よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kalze
  • ベストアンサー率47% (522/1092)
回答No.1

>フォームで入力される改行コードはCR+LF フォームで入力するクライアントがWindowsなんでしょう。 MacだとCRですし。 受け取ったデータを以下の順番で順に置換 \r\n ⇒ \n \r  ⇒ \n 例えば受け取ったデータが$tempに入っているとすれば、 $temp =~ s/\r\n/\n/g; $temp =~ s/\r/\n/g;

deepsfx
質問者

お礼

早速のご対応、ありがとうございました!!!! うまくいきました。 なるほど、入力側のクライアントにも注意が必要だったのですね。勉強になりました。