Affinity supporta l’uso di espressioni regolari per trovare il contenuto del documento che corrisponde a modelli specificati.
Le espressioni regolari vengono utilizzate in contesti differenti in Affinity:
L’utilizzo delle espressioni regolari richiede una sintassi per indicare i modelli che si desidera trovare nel testo. I casi di utilizzo e le espressioni di esempio forniti di seguito illustrano l’utilizzo della sintassi più comune che può essere utile per scrivere le espressioni.
Una guida completa per sfruttare al massimo le espressioni regolari è al di fuori dell’ambito della Guida di Affinity. Per informazioni più complete, è possibile consultare risorse online come www.regular-expressions.info e regexone.com.
Quando un’espressione corrisponde a delle lettere, il pannello Stati distingue tra maiuscole e minuscole, a meno che non si indichi esplicitamente il contrario nell’espressione. Il pannello Trova e sostituisci distingue tra maiuscole e minuscole quando l’opzione di formattazione Corrispondenza maiuscole/minuscole è abilitata nella casella Trova.
Su ciascun pannello, la distinzione tra maiuscole e minuscole può essere ignorata tutta un’espressione o solo per una parte:
È possibile ignorare l’utilizzo delle maiuscole o minuscole per lettere specifiche in un’espressione utilizzando una classe di caratteri. Ad esempio, per far corrispondere la lettera a, sia in maiuscolo che in minuscolo, utilizzare [aA] nell’espressione.
Le classi di caratteri possono essere utilizzate anche per la corrispondenza di un intervallo di caratteri. Per esempio, [a-eA-E] fa corrispondere una singola lettera tra a ed e, indipendentemente se sono in maiuscolo o in minuscolo.
In un documento di Affinity Photo, gli strumenti di ritocco sono stati utilizzati per rimuovere polvere e difetti da una foto dipingendo sui livelli sopra dell’immagine.
Di conseguenza, ciascuno di questi livelli viene denominato Rimozione polvere o Rimozione difetti.
Nel pannello Stati, è possibile aggiungere una query che verifica che i nomi dei livelli corrispondano all’espressione regolare (?i)(Dust|Blemish) removal(?i), in modo che le parole Dust, ossia “Polvere”, o Blemish, ossia “Difetti”, siano seguite da uno spazio e quindi da “removal”, ossia rimozione. La distinzione tra maiuscole e minuscole viene ignorata per l’intera espressione.
In un documento di Affinity Designer è stato utilizzato il nome del livello riempimento sfalsato per identificare i livelli che sono stati riposizionati manualmente per creare un effetto di stampa errata fatta a mano.
In alcuni punti queste parole potrebbero essere state inserite in ordine inverso.
Nel pannello Stati, è possibile aggiungere una query che verifica che i nomi dei livelli corrispondano all’espressione regolare (?i)(?=.*offset)(?=.*fill).*$. Questa corrisponde ai nomi dei livelli che contengono entrambe le parole ogni volta che ognuna di queste sia presente nel nome. La distinzione tra maiuscole e minuscole viene ignorata per l’intera espressione.
In un documento di Affinity Designer per un progetto architettonico in CAD, i nomi dei livelli identificano i componenti dell’edificio con un prefisso di due lettere, seguito da uno o più gruppi di trattini bassi seguiti da alcune cifre. Per esempio, Ss-35_10_15.
Nel pannello Stati, è possibile verificare la visibilità dei livelli che appartengono a una particolare categoria di componenti utilizzando un’espressione come [Ss][Ss](_[0-9]{1,})+. L’espressione funzionerà anche se la lettera del prefisso viene digitata in modo errato.
Viceversa, è possibile verificare la visibilità dei livelli di tutte le altre categorie di componenti con una piccola modifica all’inizio dell’espressione, che diventa (^[Ss][Ss])(_[0-9]{1,})+.
In un documento di Affinity Publisher, si desidera trovare le occorrenze di una parola in tutto il testo, ma che vengano omesse le occorrenze precedute da una parola specifica.
Nel pannello Trova e sostituisci, dopo aver selezionato l’opzione Espressione regolare tra le opzioni di Formattazione nella casella Trova, è possibile usare l’espressione (?>!proin )aliquam. I risultati includeranno istanze di aliquam tranne quelle in cui la parola è preceduta da proin e uno spazio.
È possibile escludere le istanze contenenti una delle numerose parole che precedono un termine. Ad esempio, per escludere le istanze in cui la parola error è preceduta dall’articolo “the” o “an”, utilizzare l’espressione (?>!(the|an) )error.