
ついこの間質問した件ですが、うまくいかなくなり、
わかる方ご伝授お願いいたします。
入力テキストエリアに「\」または「%」と入力すると文字化けするので、
何か良い解決策はありませんか?
教えていただいた方法で、「\」と入力した場合、
$tmp = '\';
$tmp =~ s/\\/¥/; #(2)\-->¥
処理を追加してみたのですが、
5Cコード処理("表\示" や "予\約" のように、バックスラッシュを補完する処理)
をしたあとに、この上の\→¥を行うと、表示と予約が文字化けになります。
「\」または「%」を全角にしてしまう方法はありますか?
教えて下さい。
No.5ベストアンサー
- 回答日時:
> EUCで保存してあるものをShiftJISとして
> 表示させたい場合はどのように表示させれば
> いいのでしょうか?もしかして、
> 深く考える必要はないのでしょうか?
深く考える必要はありません。
出力するときにShiftJISに戻すだけです。
Jcode.pmを使ってる場合でソースコード上はEUCの場合、
print jcode("あいうえお","euc")->sjis;
または、
$value = "あいうえお"; #EUC
$value = jcode($value,"euc")->sjis; #ShiftJISに変換
print $value; #出力はShiftJIS
というような感じです。
jcode.plを使ってる場合も同じように出力直前でShiftJISに戻せばOKです。
なお、Perl 5.8.xの場合は、ソース上で指定することで簡単にソース上とは違う文字コードでの出力の指定が可能ですがここでは割愛します。
回答有難うございます。
わかりやすい説明をしていただいて、
理解できそうな気がします。
少しずつ理解を深めていこうと思います。
本当に有難うございました。
No.4
- 回答日時:
ソースがEUCで、出力をSJISにしたい場合はjcodeなどで変換する必要があります。
ソースがEUCの場合、EUCでの出力を前提とするのが通常かと。
混乱の原因は「どこで\などに注意しなければならないか?」が明確になっていないことだと思います。
ソースをEUCにすると、ここのところをあまり注意しなくても済みますが、
SJISでソースを記述してもちょっとした注意で回避できます。
注意といっても、ダブルクォーテーション/シングルクォーテーションの使い分けと、
正規表現のメタ文字くらいかな。
この2点に注意していれば大丈夫ですよ。
> 「\」または「%」を全角にしてしまう方法はありますか?
ちなみに、文字列のコードがSJISの場合、
「\だけを¥に変換」という処理は結構面倒なロジックが必要になります。
無理に変換して文字化けを回避するより、2点に注意して文字化けを回避したほうが楽なんじゃないかなぁ。
回答有難うございます。
わかりやすい説明をしていただいて、
理解できそうな気がします。
少しずつ理解を深めていこうと思います。
本当に有難うございました。
No.3
- 回答日時:
文字コードの変換は Jcode.pm とか jcode.pl とか nkf とかあれとかこれとか...
いろいろある予感
EUCで保存したのをSjisにして出力してもいいし、
HTMLならタグでEUCコードであることを示してやれば
そのまま出力しても読めることが多いな。
鯖の設定にもよるが。
回答有難うございます。
わかりやすい説明をしていただいて、
理解できそうな気がします。
少しずつ理解を深めていこうと思います。
本当に有難うございました。
No.2
- 回答日時:
$tmp = qq|表示\\|; #\|だと|がエスケープされてしまうので\\|
$tmp =~ s/\\/¥/g;
$tmp =~ s/表示/表\示/g;
print $tmp; #表示¥
できればEUC等、ShiftJIS以外の文字コードを使うことをお勧めします。
この回答への補足
素早い回答有難うございます。
現在、文字はShiftJISで行っているのですが、
ShiftJISからEUCで変換し、保存すると、
EUCで保存してあるものをShiftJISとして
表示させたい場合はどのように表示させれば
いいのでしょうか?もしかして、
深く考える必要はないのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
InputMan の imTextについて
-
CSVファイルの中で、「 , 」カ...
-
CSVの定義
-
Excelについて質問です。 セル...
-
VBA 文字に半角が含まれて...
-
エクセルで数値を全角文字(カ...
-
EXCELからCSVにすると余計なカ...
-
住宅にカナを入力する際に丁目...
-
IEからEdgeへの移行に伴うIMEの...
-
英数字のみ全角から半角に変換
-
角カッコが含まれてるかどうか...
-
エクセルの検索が正しくできな...
-
SQLのデータで半角カナを全角に...
-
プログラミングでは、半角括弧...
-
エクセルにMicrosoft Barcode C...
-
正規表現で、特定の文字列を含...
-
エクセルでの”々”の扱い
-
全角英数字の必要性が理解できない
-
ローマ字からカナに変換する方...
-
xmlファイル内の文字列置換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
InputMan の imTextについて
-
文字化けを元に戻せますか?
-
nkfとjcodeの使い方の違いについて
-
正規表現
-
半角カナから全角カナへ
-
チェックボックスの複数選択の...
-
Perlでのマッチング処理について
-
中国語のコードについて
-
utf-8のマシンでsjisのデータフ...
-
文字実体参照が勝手に変換され...
-
unicodeの表示
-
PerlでUTF8をEUCに変換
-
CASL2の仕様での英単語の格納方法
-
頭文字を大文字にしたい
-
文字をISO Lathin 1 文字コード...
-
textareaでHTMLタグを使いたい
-
常用漢字?でない文字を判定す...
-
「数値文字参照への変換するソ...
-
アルファベットの変換?
-
デコードフォームについて。
おすすめ情報