![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
.
JavaScriptで関数をつくって,全角記号等を含む文字列を,最大限に圧縮するには,どのように記述すればよいでしょうか。
ただし,圧縮後の文字列は,URIencodeしても変化しない,つまりURIに直接挿入できる文字列で,また,http://d.hatena.ne.jp/elm200/?date=20080211§ … のように,最終的に ('')内に文字列を入れる事で圧縮できる形態のものとします。
.
No.2ベストアンサー
- 回答日時:
まずURLに利用できる文字種を最大限に使って独自のエンコード方式を定義する事ですね。
次にBWTなどで前処理した後、既存の圧縮アルゴリズムでデータを圧縮、その後に定義した独自のエンコード方式でデータを符号化・・。といった流れでしょうかね。1から作るのは大変だと思いますよ。でも確かjavascriptで圧縮処理とか暗号化処理とかを作ってた人がいたような。そういうのを利用させてもらえばあれですけど・・>JavaScriptで関数をつくって,全角記号等を含む文字列を,最大限に圧縮するには,どのように記述すればよいでしょうか。
ここで記述を書く事はスペース的、私のスキル的、及び時間コスト的に無理ですね。
この回答への補足
.
投稿ありがとうございます。
結構難しいんですね。
まず,「URLに利用できる文字種を最大限に」とありますが,環境によらず利用できる文字は何でしょうか。
.
No.3
- 回答日時:
URLで使用できる文字はrfcで定義されいるので普通に実装しているソフトウェアだったら準拠しておけば問題ないでしょうね。
未完成なクライアントを使っているような場合も考えたら、どんな環境でもというのは無理ですけど、普通は変な実装したものは使わないでしょうし。http://kanonji.blog4.fc2.com/blog-entry-138.html
No.1
- 回答日時:
>どのように記述すればよいでしょうか。
非常にめんどうそうな話ですね
基本的にjavascriptでgetの文字列を「圧縮」するのはやめておいた
方がよいでしょう
なんらかの制限でgetを利用する必要があるなら
単純にURIエンコードするなりPOSTでおくれなりすればよいのでは?
この回答への補足
.
早速の投稿ありがとうございます。
GETしか使えない状況で,かつ文字数にも制限がある環境のため,POSTは利用できず,通常のURIencodeでもオーバーしてしまうわけです。
質問文に掲載したサイトのScriptよりも圧縮率を高くする方法がもしあればお願いします!
.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Ruby 英数字を含む文字列(0-9,A-Z)の桁数圧縮をするには 5 2022/06/28 18:15
- Visual Basic(VBA) 以下のVBAで該当文字列の前後に付与したい。 例 前に付与 abc ユーザーID 12345 後に付 3 2022/04/19 21:50
- Java Java 南京錠 2 2023/02/04 11:46
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- その他(プログラミング・Web制作) 2つのテキストファイルを比べて文字列を特定する方法を教えて下さい 5 2022/05/01 15:22
- Excel(エクセル) エクセルで文字列と数字が混在する列に書式設定したい。 3 2022/12/19 09:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コメント削除/圧縮/難読化
-
グローバル変数とローカル変数...
-
JavaScriptで、実行するたび値...
-
javascriptでエクセルデータ読...
-
htmlのfileタグに自動で値を入...
-
表示ページによって、aタグ内の...
-
既存のwebサイトで、ローカルの...
-
ブラウザからエクセルを開く方法
-
PowerPointで時計表示
-
contenteditableで編集した内容...
-
alert()が実行できない
-
「終了していない文字列型の定...
-
ページを一回だけリロードさせ...
-
Webページ中の javascript をVB...
-
javascriptでフォルダ内のファ...
-
エクセルVBA/ Formatで文字列が...
-
1つのVBAコードをすべてのコア...
-
IE6だけエラーになる???『:...
-
javascriptからサーバサイドの...
-
HTML上(javascript)からCGIを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【JavaScript】ソースのコメン...
-
リアルタイム時計をミリ秒まで...
-
変換テーブルを使った、文字列...
-
コメント欄に顔文字一覧をつけ...
-
文字列圧縮_
-
WSH をC#で作ることは可能でし...
-
リロードしないと正常に表示さ...
-
PHPでエスケープされた文字列を...
-
var total = {①×(④×⑤)÷10000}+{...
-
ホームページの作成について
-
javascriptで文字コード変更
-
Java Script を.jsファイルを利...
-
Unityでジャンプ機能を実装した...
-
コメント削除/圧縮/難読化
-
シェルスクリプト
-
Javascriptで特殊文字を置換す...
-
javascriptにおける式と文に関...
-
検索用のメタタグを見えないように
-
拡大スクリプト・zoom_ブック...
-
javascriptで日付を加算して表...
おすすめ情報