Regex pour chaîne base64

Utilisez /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/ pour vérifier qu'une chaîne entière est une chaîne base64 valide. Chaque exemple ci-dessous a été testé avec ce motif, et vous pouvez l'ouvrir dans le Testeur de Regex avec les exemples préchargés.

Mis à jour le

/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/
Ouvrir dans le Testeur de Regex
EntréeRésultat
SGVsbG8=✓ Correspond
SGVsbG8gd29ybGQ=✓ Correspond
QUJD✓ Correspond
SGVsbG8✗ Ne correspond pas
SGV$bG8=✗ Ne correspond pas
=abc✗ Ne correspond pas
SGVsbG8==✗ Ne correspond pas

Fonctionnement du motif

PartieSignification
(?:[A-Za-z0-9+\/]{4})*Blocs complets de quatre caractères
[A-Za-z0-9+\/]{2}==Ou un bloc final avec deux signes de remplissage
[A-Za-z0-9+\/]{3}=Ou un bloc final avec un signe de remplissage

Exemples de code

JavaScript

const re = /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/;
re.test(value); // true or false

Python

import re

bool(re.fullmatch(r'(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?', value))

PHP

preg_match('/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/', $value) === 1;

Notes et limites

La chaîne vide correspond aussi, il faut donc vérifier la longueur séparément. Pour le base64url (JWT, URL), remplacez +\/ par _- et rendez le remplissage facultatif. Décodez avec l'Encodeur/Décodeur Base64.

Questions fréquentes

Quelle est la regex pour une chaîne base64 ?
/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/ — elle correspond à la chaîne entière. Consultez le tableau ci-dessus pour le rôle de chaque partie.
Quels exemples correspondent ?
Parmi les exemples testés, ceux-ci correspondent : SGVsbG8=, SGVsbG8gd29ybGQ=, QUJD. Les autres ne correspondent pas.
Comment tester cette regex ?
Cliquez sur « Ouvrir dans le Testeur de Regex » : le motif, les indicateurs et le texte d'exemple se chargent automatiquement, et les correspondances s'affichent en surbrillance pendant que vous modifiez.