# Generatore regex per regole di targeting e filtri di log

URL: https://upstreamapi.com/it/tools/generatore-regex
Type: tool
Locale: it
Published: 2026-10-11
Updated: 2026-10-11

---

> Genera pattern regex con escape per regole di targeting dei rilasci, alert matcher e filtri di log. Scegli il motore, testa i falsi positivi nel browser, copia il risultato.

*Tool gratuito*

## Generatore regex per il targeting dei rilasci e i filtri di log

Incolla gli host, i percorsi, le versioni o i codici di stato da far corrispondere. Ottieni un pattern con escape per il tuo motore regex, poi verificalo su righe reali prima che arrivi in produzione.

## Genera una regex da una lista di valori

Scegli cosa stai confrontando, inserisci i valori e scegli il motore. Il pattern e i risultati dei test si aggiornano mentre scrivi.

*[Interactive widget — see the live page for the full experience]*

## Cosa fa il generatore con i tuoi valori

### Applica l'escape a ogni letterale

Punti, slash, parentesi e segni più nei tuoi valori vengono sottoposti a escape, quindi api.internal.example.com non può corrispondere a api-internal-example-com. Le allowlist scritte a mano falliscono qui più che altrove.

### Scrive per il motore che usi

I motori di ricerca hanno bisogno di ^ e $ per fissare una corrispondenza. Prometheus, Alertmanager ed Envoy confrontano l'intera stringa e richiedono .* per le regole di prefisso e suffisso. Scegli il motore e il generatore adatta il pattern.

### Testa prima di rilasciare

Ogni riga di test riceve un badge di corrispondenza o di non corrispondenza usando il pattern che stai per copiare. Aggiungi di proposito i falsi positivi: checkout-v22 accanto a checkout-v2, example.com.evil.io accanto a example.com.

*Dove i pattern falliscono*

## La regex che ha superato la review e ha comunque svegliato qualcuno

La maggior parte degli incidenti legati alle regex nella configurazione di rilasci e alerting non è esotica. Una regola di targeting pensata per coprire tre host interni ha coperto anche un sosia. Un alert matcher scritto con ancore che Prometheus non richiede ha escluso in silenzio un servizio. Un filtro di log che confrontava una sottostringa ha nascosto proprio gli errori che doveva contare.

Il pattern è raramente troppo sofisticato. Quasi sempre è troppo permissivo, oppure è stato testato solo su righe che dovevano corrispondere. Una regola che controlla un rilascio va testata prima di tutto sulle righe che non devono corrispondere.

- Applica l'escape ai punti in ogni hostname
- Sappi se il tuo motore applica le ancore da solo
- Testa i falsi positivi, non solo i casi che devono corrispondere
- Preferisci una lista letterale a una regex quando l'insieme è piccolo e stabile

## Da una lista di valori a un pattern di cui ti fidi

1. **Scegli il tipo di corrispondenza** — Valori esatti per le allowlist di host e chiavi di flag, prefisso per i gruppi di route, codici di stato per le regole di alert, famiglie di versioni per il targeting dei rilasci per versione dell'app.
2. **Scegli il motore** — Usa la ricerca per il codice e grep. Usa il match completo per i matcher di Prometheus, le route di Alertmanager ed Envoy. Questa sola scelta elimina l'errore più comune sulle ancore.
3. **Incolla i falsi positivi nel box di test** — Aggiungi un host simile, una versione vicina e un codice di stato appena fuori dall'intervallo. Se uno di questi risulta corrispondente, stringi i valori prima di copiare il pattern.

## Domande frequenti

### Questo generatore regex è gratuito e invia i miei valori da qualche parte?

È gratuito e funziona interamente nel tuo browser. I valori che digiti, il pattern e le righe di test non vengono mai inviati a un server. L'unica richiesta è un contatore anonimo che registra che lo strumento è stato usato.

### Quale motore regex supporta l'output?

Due comportamenti coprono la maggior parte del lavoro infrastrutturale. La ricerca si adatta a JavaScript, Go regexp, grep -E e PCRE, dove un pattern può corrispondere ovunque nella riga, quindi lo strumento aggiunge ^ e $ quando servono. Il match completo si adatta a Prometheus, Alertmanager ed Envoy, che trattano l'intera stringa come corrispondenza, quindi lo strumento aggiunge .* dove vuoi una regola di prefisso, suffisso o contenimento.

### Perché Prometheus ignora le mie ancore ^ e $?

I matcher di etichette di Prometheus sono completamente ancorati. L'espressione env=~"prod" viene valutata come ^(?:prod)$, quindi un pattern scritto per grep corrisponderà in silenzio meno di quanto ti aspetti, o nulla. Scegli il motore a match completo e il generatore scrive il pattern nel modo in cui Prometheus lo legge.

### Il pattern evita il backtracking catastrofico?

I pattern generati usano solo letterali, classi di caratteri limitate e alternanze piatte. Non contengono quantificatori annidati, che sono la causa abituale del backtracking incontrollato in JavaScript e PCRE. I motori basati su RE2, come Go ed Envoy, girano comunque in tempo lineare.

### Come vengono gestiti i caratteri speciali?

Ogni valore letterale viene sottoposto a escape. Un host come api.internal.example.com diventa api\.internal\.example\.com, quindi il punto non corrisponde più a nessun carattere. È l'errore più comune nelle allowlist scritte a mano, e lascia passare api-internal-example-com.

### Posso usare il pattern in una regola di targeting di un feature flag?

Sì, se la tua piattaforma di flag supporta un operatore regex o matches-pattern su un attributo del contesto come hostname, path o email utente. Verifica quale motore usa prima di incollare. Se offre solo operatori di corrispondenza esatta o di inizio stringa, una lista di valori letterali è più sicura di una regex.

### Cosa non fa?

Non deduce un pattern dagli esempi e non genera intervalli numerici o lookahead. Costruisce un pattern dalla lista di valori che gli dai, seguendo regole che puoi leggere. Le righe di test vengono valutate con il motore JavaScript, quindi verifica il comportamento specifico del motore nel tuo stack prima di rilasciare.

## Subordina il rilascio allo SLO, non all'intuito

Le regole di targeting decidono chi riceve una modifica. L'AI Pilot di upstreamapi decide se il rilascio prosegue e torna indietro da solo quando il tasso di errore supera la soglia del tuo SLO.

*Call to action: Scopri come funziona upstreamapi*


## FAQ

### Questo generatore regex è gratuito e invia i miei valori da qualche parte?

È gratuito e funziona interamente nel tuo browser. I valori che digiti, il pattern e le righe di test non vengono mai inviati a un server. L'unica richiesta è un contatore anonimo che registra che lo strumento è stato usato.

### Quale motore regex supporta l'output?

Due comportamenti coprono la maggior parte del lavoro infrastrutturale. La ricerca si adatta a JavaScript, Go regexp, grep -E e PCRE, dove un pattern può corrispondere ovunque nella riga, quindi lo strumento aggiunge ^ e $ quando servono. Il match completo si adatta a Prometheus, Alertmanager ed Envoy, che trattano l'intera stringa come corrispondenza, quindi lo strumento aggiunge .* dove vuoi una regola di prefisso, suffisso o contenimento.

### Perché Prometheus ignora le mie ancore ^ e $?

I matcher di etichette di Prometheus sono completamente ancorati. L'espressione env=~"prod" viene valutata come ^(?:prod)$, quindi un pattern scritto per grep corrisponderà in silenzio meno di quanto ti aspetti, o nulla. Scegli il motore a match completo e il generatore scrive il pattern nel modo in cui Prometheus lo legge.

### Il pattern evita il backtracking catastrofico?

I pattern generati usano solo letterali, classi di caratteri limitate e alternanze piatte. Non contengono quantificatori annidati, che sono la causa abituale del backtracking incontrollato in JavaScript e PCRE. I motori basati su RE2, come Go ed Envoy, girano comunque in tempo lineare.

### Come vengono gestiti i caratteri speciali?

Ogni valore letterale viene sottoposto a escape. Un host come api.internal.example.com diventa api\.internal\.example\.com, quindi il punto non corrisponde più a nessun carattere. È l'errore più comune nelle allowlist scritte a mano, e lascia passare api-internal-example-com.

### Posso usare il pattern in una regola di targeting di un feature flag?

Sì, se la tua piattaforma di flag supporta un operatore regex o matches-pattern su un attributo del contesto come hostname, path o email utente. Verifica quale motore usa prima di incollare. Se offre solo operatori di corrispondenza esatta o di inizio stringa, una lista di valori letterali è più sicura di una regex.

### Cosa non fa?

Non deduce un pattern dagli esempi e non genera intervalli numerici o lookahead. Costruisce un pattern dalla lista di valori che gli dai, seguendo regole che puoi leggere. Le righe di test vengono valutate con il motore JavaScript, quindi verifica il comportamento specifico del motore nel tuo stack prima di rilasciare.