Le espressioni regolari, o regex, sono linguaggi di pattern compatti usati per cercare, convalidare, estrarre e sostituire testo. Possono corrispondere a semplici stringhe, ma molti motori regex supportano anche raggruppamento, ripetizione, lookaround e altre funzionalità che le rendono sorprendentemente espressive. In alcune implementazioni, pattern eccessivamente complessi possono persino comportarsi come piccoli programmi.
Nella sicurezza informatica, le regex sono ovunque: convalida degli input, analisi dei log, rilevamento di malware, filtraggio degli URL e firme di intrusione. Questa potenza le rende utili per la difesa, ma anche rischiose quando i pattern sono lenti, ambigui o difficili da rivedere. Regex scritte male possono causare denial of service tramite backtracking eccessivo, e gli aggressori possono sfruttare regole di convalida deboli creando input che aggirano un pattern. I team di sicurezza trattano quindi le regex come codice: le testano, ne limitano l'ambito e preferiscono pattern chiari a quelli troppo ingegnosi.


