- ベストアンサー
英文字を含む文字列のURIエンコードについて
- 英文字を含む文字列のURIエンコードについての説明と、実際に試した結果の違いについて説明します。
- URLエンコードとは、URL内で使用できない文字を%でエンコードする方法です。英文字を含む文字列の場合、エンコード結果はサイトによって異なることがあります。
- 具体的なサンプルを挙げながら、変換サービスサイトでエンコードした結果と実際のエンコード結果が異なる理由を説明します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんなスクリプトで変換してみてはいかがでしょう。 (function(){prompt(2,prompt(1).replace(/./g,function(s){var c=s.charCodeAt(0);return 127<c?encodeURIComponent(s):(c<16?'%0':'%')+c.toString(16);}));})(); ブラウザのアドレス欄に次の1行を貼り付けるか、 javascript:(function(){prompt(2,prompt(1).replace(/./g,function(s){var c=s.charCodeAt(0);return 127<c?encodeURIComponent(s):(c<16?'%0':'%')+c.toString(16);}));})(); 次のコードを適当なHTMLファイルに書き込むと早いです。 <a href="javascript:%28function%28%29%7bprompt%282%2cprompt%281%29%2ereplace%28%2f%2e%2fg%2cfunction%28s%29%7bvar%20c%3ds%2echarCodeAt%280%29%3breturn%20127%3cc%3fencodeURIComponent%28s%29%3a%28c%3c16%3f%27%250%27%3a%27%25%27%29%2bc%2etoString%2816%29%3b%7d%29%29%3b%7d%29%28%29%3b">CLICK!</a> どちらの場合も、1つ目のダイアログ「1」に変換前の文字列を入れると、 ダイアログ「2」に変換後のコードが出てくるはずです。
お礼
ありがとうございます! 助かりました!