「パーセントパーセントうるせぇ、WikipediaのURLかよ」
― サンキューピッチ 32話より
『サンキューピッチ』で、野球をディーラーに例えて勝負を挑む伊能に、ゆるふわ球児(?)泉が言い返したセリフです。
住吉九先生のセリフ回しには、抜群のわかりやすさと、あるあるを抜き出すセンスがあって、たまらないものがありますね。
なんで我々のWikipediaにはたくさんの%があるのか
例えば、「サンキューピッチ」の日本語版Wikipediaのページは、こういうURLになります。ブラウザのアドレスバーには日本語で表示されていますが、メモ帳に貼り付けてみると分かります。
%だらけ。 これが「WikipediaのURLかよ」の正体です。
ちなみに、英語版Wikipediaでは日本語ほど%だらけにはなりません。どうしてでしょうか?
URLに使える文字は限られている
URL、(厳密には)URIとして扱うときは使える文字が限られています。
使える文字:
- 半角英数字(A-Z、a-z、0-9)
- 一部の記号(
-_.~など)
使えない文字:
- 日本語(ひらがな、カタカナ、漢字)
- スペース
- その他の多くの記号
URLの仕様(RFC 3986)で決まっています。
じゃあ日本語をURLに入れたいときはどうするのか?
「パーセントエンコーディング」 という変換をかけます。
- 文字をUTF-8でバイト列に変換
- 各バイトを
%XX(16進数)で表現
というものです。
例えば「サ」という文字:
- UTF-8バイト列 →
E3 82 B5 - パーセントエンコード →
%E3%82%B5
「サンキューピッチ」全体だと:
%E3%82%B5%E3%83%B3%E3%82%AD%E3%83%A5%E3%83%BC%E3%83%94%E3%83%83%E3%83%81
1文字につき約9文字に膨れ上がります。 だからあんなに長くなるわけです。
英語圏のユーザーは、たぶんこのネタがわかりません。
英語はそのままURLに入るから、「WikipediaのURLが%だらけ」という経験をあまりしないのではないかと思います。
日本語、中国語、韓国語、アラビア語など、非ASCII文字を使う言語圏だけが味わえる「あるある」です。
まとめ
どうして日本語版(非英語版)Wikipediaには%が出現するのか?
技術的には「パーセントエンコーディング」という仕組みで、日本語がURLに入ると%記号の洪水になります。英語圏には伝わらない、非英語圏の人間のみに通じるネタです。
(おまけ)URL短縮サービス
%だらけの長いURLを共有するのは大変です。
そこで登場したのが短縮URLサービスです。
- bit.ly
- t.co(Twitter/X)
- goo.gl(終了済み)
長いURLを https://bit.ly/xxxxx のような短い形式に変換してくれます。
(が、これらのサービスが「正しく短縮先と対応してくれる」というのを前提にしているもので、サービス終了してしまうと結構厄介な問題になったりします。)
Wikipedia自体も、日本語URLの問題を認識しています。記事タイトルをそのまま表示する機能がブラウザに実装されていますが、コピペするとエンコードされた形式になることが多いです。
(おまけ2)なんで日本語をURLに入れたいの?
A:Wikipediaだからです。
理由はシンプルで、Wikipediaの記事は**「URLそのものが記事の正式な名前」**だからです。
Wikipediaでは、
- 記事タイトル = ページの識別子
- ページ名は人間が読める必要がある
- 検索結果・共有・被リンクのすべてで同じURLを使う
という思想で設計されています。
もし日本語記事を、
https://ja.wikipedia.org/wiki/123456
のようなIDで管理していたら、
- 何の記事かわからない
- 検索結果で意味を持たない
- 人間向け百科事典として不親切
になります。
だからWikipediaは、記事タイトルをそのままURLに使っています。
普通の記事投稿サイトだと、IDから内容が分からなくてもいいので、IDを採番して、それをURLにしてしまえば日本語で表示しなくてもよいのですね。百科事典ならではの事情です。
