0

SMS 内で短縮リンクを送信するために、Base32 エンコーディングで yoururls を使用しています。URL の前にメッセージが表示されます。SMS は 160 文字に制限されており、私のメッセージは約 140 文字なので、文字数には十分注意する必要があります。

私の質問はこれです。base32 エンコーディングを使用して 4 文字の制限に収まる URL の数を計算するにはどうすればよいですか?

4

1 に答える 1

0

permutationsについて質問しているかどうかはわかりません。

base32 エンコーディングの各文字は、32 個の値 ([A - Z] および [2 - 7]) を持つことができます。の形式を使用する場合http://yoursite.com/xxxxxxxxは短い URL であり、4 桁で 32 4の順列を含めることができます。つまり、1,048,576です。

3 桁の URL (例: ) も含めると、32 3の順列http://yoursite.com/xxxを持つことができます。つまり、32,768です。4 桁の URL を合わせると、合計1,081,344になります。

2 桁の URL (例: ) も使用するhttp://yoursite.com/xxと、さらに 1,024 個の URL を取得し、合計で1,082,368個になります。1 桁の数字 (例: http://yoursite.com/x) を含めると、さらに 32 になり、合計で1,082,400になります。


ただし、[A - Z] と [2 - 7] だけを使用する必要はありません。RFC3986に従って、文字を使用できますABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~:/?#[]@!$&'()*+,;=。それは84の異なる文字です。これとともに:

http://yoursite.com/xxxx               49,787,136
http://yoursite.com/xxx added          50,379,840 (+592,704)
http://yoursite.com/xx added           50,386,896 (+  7,056)
http://yoursite.com/x added            50,386,980 (+     84)

文字を省略しても-._~:/?#[]@!$&'()*+,;=、短縮 URL には実際には収まらないため、62 文字になります。それと:

http://yoursite.com/xxxx               14,776,336
http://yoursite.com/xxx added          15,014,664 (+238,328)
http://yoursite.com/xx added           15,018,508 (+  3,844)
http://yoursite.com/x added            15,018,570 (+     62)
于 2014-10-03T07:03:19.263 に答える