No.3ベストアンサー
- 回答日時:
use utf8;
use Encode;
use URI::Escape;
my $utf8String = 'テスト';
my $urf8BytesEsc = uri_escape(encode('utf8', $utf8String));
my $eucBytesEsc = uri_escape(encode('euc-jp', $utf8String));
my $sjisBytesEsc = uri_escape(encode('shiftjis', $utf8String));
print 'http://www.google.co.jp/search?hl=ja&q=' . $urf8BytesEsc ,"\n";
print 'http://dictionary.goo.ne.jp/search.php?MT=' . $eucBytesEsc , "\n";
print 'http://example.com/search.cgi?sjis=' . $sjisBytesEsc , "\n";
ご回答ありがとうございます。
こちらのデータで確認できました。
このところほとんどの検索サービスでUTF-8への対応が進んできているため、
用途は減ってきていますが、これでいろいろと試すことができます。
ありがとうございました。
#!/usr/bin/perl
print "Content-type: text/html\n\n";
use utf8;
use Encode;
use URI::Escape;
my $utf8String = 'テスト';
my $utf8BytesEsc = uri_escape(encode('utf8', $utf8String));
my $eucBytesEsc = uri_escape(encode('euc-jp', $utf8String));
my $sjisBytesEsc = uri_escape(encode('shiftjis', $utf8String));
print <<"EOM";
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>エンコードテスト</title>
</head>
<body>
<ul>
<li><a href="http://www.google.co.jp/search?hl=ja&q=$utf8Byte …
<li><a href="http://dictionary.goo.ne.jp/search.php?MT=$eucBy …
<li><a href="http://www.google.co.jp/search?hl=ja&q=$sjisByte …
</ul>
</body>
</html>
EOM
No.2
- 回答日時:
URLエンコードする前に文字コード変換をするだけだと思いますので、
Perl4とかPerl5.6ならJcodeを利用し、
perl5.8以降ならEncodeでもいけると思います。
ご回答ありがとうございます。
use Encodeでいくつかテストしてみたのですが、
うまくいきませんでした。
もう少しいろいろと調べてみたいと思います。
No.1
- 回答日時:
URL の QUERY_STRING 中のキーワードを
URLエスケープする前の文字エンコーディングをUTF-8以外のものでやりたいということでしょうか。
例えば、
http://www.google.co.jp/search?q=%E6%A4%9C%E7%B4 …
の
%E6%A4%9C%E7%B4%A2 の箇所を
UTF-8 以外のエンコーディングの文字列から、URLエスケープしたい
ということでしょうか。
ご確認ありがとうございます。
はい。例えば、
gooや楽天はeucですのでエンコードしたURLで飛ばしたいです。
(すみません、shift-jisは適当なサイトが見つかりませんでした)
具体的には下記のように書いて、
リンク先で文字化けにならなければOKです。
print "gooで「<<a href=\"$goo$entest_euc\">$test</a>」を検索\n";
print "googleで「<<a href=\"$google$entest_utf8\">$test</a>」を検索\n";
↓↓↓↓↓↓↓↓↓↓↓↓
gooで「<a href="http://dictionary.goo.ne.jp/search.php?MT=%A5%C6 …テスト</a>」を検索
googleで「<a href="http://www.google.co.jp/search?hl=ja&q=%E3%83%86 …テスト</a>」を検索
難しいでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JcodeモジュールとEncodeモジュ...
-
Perlで、文字の出現回数を調べ...
-
sedやperlでの2バイト文字を含...
-
$obj->decode($bytes)って何?
-
MFCのコントロールにUTF-8の文...
-
Jcodeによるカタカナ→ひらがな変換
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
カンマ区切りの数字をCSVフ...
-
Accessで日付や数値を全角で表...
-
住宅にカナを入力する際に丁目...
-
EXCELからCSVにすると余計なカ...
-
「何とかで始まり、何とかで終...
-
word差し込み印刷 半角カタカ...
-
文字コードの%E3%80%とは何です...
-
CSVの定義
-
EXCEL VBA でCTRL+Fのダイア...
-
コマンドプロンプト 全角を含ん...
-
正規表現
-
VBA 文字に半角が含まれて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perl でエラー:Wide character...
-
【LaTeX】pBibTeXでのエラーの...
-
MFCのコントロールにUTF-8の文...
-
CGIでメール送信で件名文字化け
-
Jcodeによるカタカナ→ひらがな変換
-
WindowsでUTF-8のPerlスクリプ...
-
Java+MySQLで特殊文字(丸数字(...
-
【文字コード】外見上は全く同...
-
デバッグ情報が文字化けする
-
Cannot decode string with wid...
-
HTML::Templateでutf-8のテンプ...
-
Jcode.pmでconvertできない
-
perl について
-
カタカナ一覧表が知りたい
-
JcodeモジュールとEncodeモジュ...
-
sedやperlでの2バイト文字を含...
-
オブジェクト? perlをオーバー...
-
UTF-8のPerlから、UTF-8、EUC、...
-
pythonの文字コードとファイル操作
-
WWW::Mechanizeの文字コードに...
おすすめ情報