タイトルにあるように、 YUIコンプレッサーが一重引用符を二重引用符に置き換える理由は何ですか?二重引用符はスペースを取りませんか(私はそうは思いません)?それとも何か他のものですか?
1 に答える
10
これらの文字を1つのタイプに正規化すると、GZIP圧縮が有効になります。これは、二重引用符である理由は偶然です。
GZipは標準的な圧縮方法で機能するため、たとえば次のような文字列がある場合は次のようになります。
"Foo", 'bar', "baz"
単一の文字として圧縮",
し(それを表すために#記号を使用しましょう)、文字列を次のようなものに減らすことができます。
"Foo#'bar', "baz"
一方、あなたが持っていた場合:
"Foo", "bar", "baz"
", "b
次のように圧縮できます。
"Foo#ar#az"
したがって、使用可能な文字の総数を削除することにより、文字列を短くします。
繰り返しますが、一貫している限り、どちらの引用にするかは重要ではありません。
これが私のLinuxコマンドラインからのカットアンドペーストで、それを示しています。
briang@ubuntu:~$ cat 1.txt
"Foo", 'bar', "baz"
briang@ubuntu:~$ cat 2.txt
"Foo", "bar", "baz"
briang@ubuntu:~$ cat 1.txt.gz
&▒:O1.txtSr▒▒W▒QPOJ,R▒QPJJ▒R▒(▒P▒
briang@ubuntu:~$ cat 2.txt.gz
<▒:O2.txtSr▒▒W▒QPJJ,▒PUJ\tE▒
briang@ubuntu:~$ ls -la *txt*
-rw-rw-r-- 1 briang briang 20 2012-02-14 16:39 1.txt
-rw-rw-r-- 1 briang briang 46 2012-02-14 16:37 1.txt.gz
-rw-rw-r-- 1 briang briang 20 2012-02-14 16:39 2.txt
-rw-rw-r-- 1 briang briang 41 2012-02-14 16:38 2.txt.gz
このような小さなファイルをgzipで圧縮すると、サイズが小さくなるのではなくサイズが大きくなることがわかりますが、2つの生の入力のgzipの違いを見ると、概念がわかります。正規化されたgzipファイルは5バイト小さくなります。
于 2012-02-14T20:19:08.433 に答える