CGIをPerlで組んでいます。
掲示板を運営しておりまして、利用者がTextareaフォームで文章を入力するのですが、改行がいつの間にか認識されなくなってしまいました。
認識されなくなったというのは、登録の時ではなくて、保存したモノを呼び出す時です。
保存の仕方が悪いのかと思ったりもしますが、
突然そうなってしまったので、理由がよく分かりません。
(1)一般的に、改行のエスケープシーケンスは \n と \r があるかと思うのですが、
それぞれ何が違うのでしょうか?
ちなみに掲示板はi-modeとPCと両方に対応しており、
同じ内容をi-modeでもPCでも読めるようになっています。
(2)また、入力された文章をファイルに保存する時の 改行コードの置換は どのような方法がベストなのでしょう?
なにか手がかりになるようなコメントでも構いませんのでよろしくお願いいたします。
_
No.1ベストアンサー
- 回答日時:
\nはLF(ラインフィード)
\rはCR(キャリッジリターン)
ラインフィードとかキャリッジリターンというのはタイプライターの名残だとは思いますが、詳しくは知りません
で、OSによって改行コードの扱いがちがうんです。
Windows CR LF \r\n
Macintosh CR \r
UNIX LF \n
ですから置換はPerlの置換演算子を使うのが手っ取り早いかと
こんな感じに...
#WINDOWSの改行コードを<BR>タグに
$string=~ s/\r\n/<BR>/g;
#Macの改行コードを<BR>タグに
$string=~ s/\r/<BR>/g;
早速のご回答ありがとうございます。
WIN、MAC、UNIXによって違うんですね。
ってことは 環境変数でOSを特定した上で
置換演算の方法を変えなければいけないのでしょうかね。
ん~~なかなか難儀ですね。
参考になりました。
ありがとうございます。
_
No.2
- 回答日時:
下記ページが非常に参考になります。
ご一読ください。・改行コードを統一する
・改行コードを <BR> に変換する
・改行コードを削除する
参考URL:http://www.din.or.jp/~ohzaki/perl.htm#CRLF_Unify
大変参考になるページをありがとうございます。
なかなか奥が深いんですね。
勉強させていただきます。
いろいろ試してみて、ご報告します。
ポイントは必ず発行しますので。
_
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- PHP PHPでテキストファイルに保存した時の改行問題 1 2022/11/19 15:07
- PHP 文字列を段落で分ける方法を教えて下さい。 2 2023/03/09 10:03
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/03/09 10:07
- その他(ブラウザ) テキストの折り返しがないサイトの文字を折り返してPDF化したい 4 2022/12/02 09:49
- Outlook(アウトルック) PCで登録途中の画面から認証コードを確認する方法を教えてください。 3 2022/09/29 06:11
- 事件・犯罪 刑法についてだれか助けてください。 2 2022/06/05 04:08
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- 事件・犯罪 刑法についてです 2 2022/06/04 03:11
- その他(プログラミング・Web制作) Android Studio 難しい 4 2023/06/18 22:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ホームページでCGIのフォームを...
-
フォームを再送信しますか?
-
apacheでPerl CGIが作動せず、5...
-
エクセルで集計したい。
-
htmlからパラメータで、cgiに渡...
-
CGIって何ですか?簡潔に教えて...
-
/bin/awk '{print $5}'ってどう...
-
URLがhttp://~.cgiとなってい...
-
cgi-perl の sendmail について
-
ホームページにメールフォーム...
-
サイト訪問者の情報を取得したい
-
VBAで条件から範囲を指定して色...
-
入力フォーム(電話番号)
-
アクセスカウンター(counter.cg...
-
CGIメールフォームの件名について
-
POSTメソッドの最大容量について
-
3DCG
-
cgi アクセス制限 エラー
-
CGIの記述について教えてくださ...
-
CGIの設置が分かりません・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームを再送信しますか?
-
エクセルで集計したい。
-
apacheでPerl CGIが作動せず、5...
-
ホームページでCGIのフォームを...
-
入力フォーム(電話番号)
-
htmlからパラメータで、cgiに渡...
-
/bin/awk '{print $5}'ってどう...
-
CGIが読み書きするデータファイ...
-
POSTメソッドの最大容量について
-
チェックボックスでのvalue値の...
-
cgi アクセス制限 エラー
-
CGIゲーム設置について
-
サイト訪問者の情報を取得したい
-
CGIって何ですか?簡潔に教えて...
-
cgiからsendmailを送信で文字化け
-
ホームページにメールフォーム...
-
ラズパイでのCGIで、pythonソー...
-
一番簡単なCGI,掲示板の設置教...
-
perlで書いたcgiでsqliteの使い...
-
CGIメールフォームの件名について
おすすめ情報