<div dir="ltr"><div>Ciao a tutti, consideriamo la seguente stringa:</div><div><br></div><div>'uno due intruso due tre uno'</div><div><br></div><div>voglio matchare 'intruso'.</div><div>A dire il vero, voglio trovare qualsiasi cosa non  sia 'uno', 'due', 'tre', 'quattro'.</div><div>'quattro' non è presente nella stringa ma potrebbe esserci.</div><div>Anche la presenza delle altre parole "buone" è opzionale.<br></div><div><br></div><div>Come strategia ho pensato a questo pattern:</div><div><br></div><div>'((?:uno)|(?:due)|(?:tre)|(?:quattro)|(?: ))'</div><div><br></div><div>Così faccio il match di tutte le parole "buone".</div><div>Ora dovrei solo riuscire a negare il pattern e quindi matchare intruso.<br></div><div><br></div><div>Sto testandolo la regex su <a href="https://regex101.com/">https://regex101.com/</a> e mi sembra di essere sulla buona strada ma non so come fare la negazione del pattern.</div><div>Speravo in un semplice ^ ma non è il carattere giusto.</div><div><br></div><div>Suggerimenti?<br></div></div>