encode | decode | alfanumeriek

> base36 | 0-9,A-Z | compact <

// Base36 – compacte alfanumerische codering met cijfers 0-9 en letters A-Z

0 tekens
0 tekens
[ALFANUMERIEK]

Alleen alfanumeriek

Gebruikt uitsluitend letters A-Z en cijfers 0-9, compatibel met vrijwel alle systemen en databasen.

[COMPACT]

Compacte representatie

Compacter dan decimale notatie voor grote getallen, terwijl de strings leesbaar en deelbaar blijven.

[URL-SAFE]

URL‑vriendelijk

Geen speciale tekens – ideaal voor korte URL's, publieke ID's, productcodes en licentiesleutels.

>> technische info

Hoe Base36 werkt:

Base36 is een positiestelsel met basis 36 en gebruikt 36 symbolen (0-9 en A-Z). Elke positie stelt een macht van 36 voor, waardoor grote getallen in korte alfanumerieke tekenreeksen kunnen worden gecodeerd.

Base36‑voorbeelden:

Getallen naar Base36:
123 → 3F
1000 → RS
999999 → LFLR

Tekst naar Base36 (via bytes):
Hi → 1Q5
ABC → 3O0AF

Veelvoorkomende toepassingen:
- Video‑ID's
- Korte URL's
- Sessietokens
- Productcodes
- Licentiesleutels

Waarom Base36 gebruiken:

  • ▸Korte, leesbare identifiers uit grote getallen genereren
  • ▸URL‑veilige tokens zonder speciale tekens maken
  • ▸Numerieke waarden in compacte alfanumerieke strings omzetten
  • ▸Vaak niet hoofdlettergevoelig, robuust bij variaties in schrijfwijze
  • ▸Gebruiksvriendelijker dan puur hexadecimale of binaire representaties

>> veelgestelde vragen

Wat is Base36?

Base36 is een positiestelsel dat 36 verschillende symbolen gebruikt: de cijfers 0-9 en de letters A-Z. Het biedt een compacte manier om getallen voor te stellen met uitsluitend alfanumerieke tekens.

Waar wordt Base36 doorgaans voor gebruikt?

Base36 wordt vaak gebruikt voor korte publieke ID's zoals korte URL's, video‑ID's, productcodes en sessietokens die leesbaar en makkelijk te delen moeten zijn.

Is Base36 hoofdlettergevoelig?

In de meeste implementaties is Base36 niet hoofdlettergevoelig – A-Z en a-z worden gelijk behandeld. Dat voorkomt fouten wanneer systemen of gebruikers hoofdletters wijzigen.

Hoe verhoudt Base36 zich tot andere encodings?

Base36 is compacter dan decimaal (basis 10), maar minder compact dan hexadecimaal (basis 16) of Base64. Het biedt een goed evenwicht tussen compactheid en leesbaarheid.

// Snelle referentie

DECHEXBase36Base62
0000
3523zz
362410A
100642s1c
10003e8rsG8
12345678975bcd1521i3v98M0kX
4294967295ffffffff1z141z34gfFC3

// Codevoorbeelden

JavaScript  (123).toString(36)   // "3f"      parseInt("3f", 36)  // 123
Python      int("3f", 36)  // 123       (no built-in int -> base36; write a loop)
Java        Integer.toString(123, 36)   Long.parseLong("3f", 36)
PHP         base_convert("123", 10, 36)
Go          strconv.FormatInt(123, 36)   strconv.ParseInt("3f", 36, 64)

>> Meer vragen

V: Hoe schrijf ik Base36 in JavaScript, Python of Java?

A: JavaScript, Java, PHP en Go hebben het ingebouwd: (123).toString(36) geeft "3f" en parseInt("3f", 36) geeft weer 123. In Python decodeert int(s, 36); voor coderen schrijf je een kleine lus.

V: Wat is het grootste gehele getal dat ik in Base36 kan coderen?

A: Theoretisch geen maximum: Base36 is slechts een positienotatie. In de praktijk beperkt het integertype: in JavaScript is Number.MAX_SAFE_INTEGER (2⁵³−1) gelijk aan 2gosa7pa2gv; gebruik BigInt voor grotere waarden.

V: Waarom lijken YouTube-ID’s en korte URL’s op Base36/Base62?

A: Korte ID’s ontstaan meestal door een groot geheel getal (database-ID of hash) om te zetten naar een hoger grondtal. Base36 negeert hoofdletters; Base62 is nog korter maar maakt wel onderscheid.

Andere talen

GEKOPIEERD!