Validazione e Sicurezza Intermedio Aggiornato: 21/08/2026

Stringa codificata in Base64

Valida stringhe codificate secondo lo standard Base64 con padding corretto `=` o `==`.

Risposta diretta

A cosa serve e come si usa questa regex?

Valida stringhe codificate secondo lo standard Base64 con padding corretto `=` o `==`.

Espressione Regolare (Pattern)

Flag consigliati: nessuno · Motori compatibili: JavaScript, PCRE/PHP, Python, Go, .NET
Testa
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$

Integrazione nel codice

Snippet pronti all'uso
// JavaScript (ES6+)
const regex = /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/;
const isValid = regex.test(text);

// Estrazione match
const matches = text.match(regex);
<?php
// PHP 8.2+ (PCRE)
$pattern = '~^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$~';
$isValid = (bool) preg_match($pattern, $text);

// Estrazione con gruppi
if (preg_match($pattern, $text, $matches)) {
    print_r($matches);
}
# Python 3 (re)
import re

pattern = r"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"
is_valid = bool(re.search(pattern, text))

# Estrazione match
match = re.search(pattern, text)
if match:
    print(match.group(0))
// Go (regexp)
package main

import (
	"fmt"
	"regexp"
)

func main() {
	re := regexp.MustCompile(`^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$`)
	isValid := re.MatchString(text)
	fmt.Println(isValid)
}
// C# (.NET)
using System;
using System.Text.RegularExpressions;

bool isValid = Regex.IsMatch(text, @"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$");

Come funziona (Spiegazione dettagliata)

  1. (?:[A-Za-z0-9+/]{4})* valida gruppi completi di 4 caratteri Base64.
  2. Gestisce il padding finale con due caratteri e == oppure tre caratteri e =.
  3. Accetta anche stringhe vuote.

Casi d’uso consigliati

  • Allegati email MIME e data URI (`data:image/png;base64,...`)
  • Decodifica payload binari in API JSON
  • Crittografia e chiavi simmetriche

Esempi che corrispondono (Validi)

4 test passati
T0NFV2ViIFJlZ2V4
YQ==
YWI=
YWJj

Esempi rifiutati (Non validi)

3 test respinti
Y===
Y@==
T0NFV2ViIFJlZ2V
Verifica empirica

Hai bisogno di collaudare questo pattern con i tuoi dati?

Apri il tester sandboxato con questa regex già caricata e verifica i gruppi di cattura.

Apri nel tester