La classe Replace contiene il solo filtro Find and Replace, il quale consente di cercare uno specifico pattern, nel testo in input, e di sostituirlo con altro testo. Esso richiede di specificare:
✓ il tipo di pattern da cercare, mediante l'opzione Find type;
✓ il pattern da cercare, nel primo editor di testo;
✓ il testo da sostituire, nel secondo editor di testo.
L'opzione Find type può assumere i valori:
✓ Exact ricerca tutte le occorrenze che corrispondono esattamente al testo specificato nel primo editor;
✓ Sounds like ricerca tutte le occorrenze la cui pronuncia assomiglia al testo specificato nel primo editor, ma che si differenziano per alcuni caratteri;
✓ Edit distance ricerca tutte le occorrenze che possono essere ricondotte al testo specificato nel primo editor, mediante un numero prefissato di operazioni (e.g. sostituzione o cancellazione di un carattere);
✓ Pattern (perl) ricerca tutte le occorrenze che corrispondono ad una regular expression del linguaggio Perl;
✓ MSWord Pattern ricerca tutte le occorrenze che corrispondono ad una regular expression del linguaggio Windows;
✓ Unicode (UTF-16LE) ricerca tutte le occorrenze che corrispondono esattamente ad un testo in formato Unicode;
✓ Unicode pattern (UTF-16LE) ricerca tutte le occorrenze che corrispondono ad un pattern in formato Unicode.
I filtri Unicode e Unicode pattern richiedono che il testo in input abbia formato UTF-16LE. |
In caso il Find type sia Exact è possibile personalizzare la ricerca del pattern mediante i flag:
✓ Match case, se attivo, rende la ricerca del pattern case sensitive;
✓ Find whole words only, se attivo, ignora eventuali occorrenze del pattern all'interno di parole più lunghe.
In caso il Find type sia Edit distance è necessario specificare il numero massimo di operazioni, con cui è possibile ricondurre una parola al pattern da eliminare, mediante l'opzione Edit distance threshold. Inoltre è anche possibile rendere questo tipo di ricerca case sensitive, attivando il flag Match case.
In caso il Find type sia Pattern (perl) è possibile personalizzare la ricerca del pattern mediante le opzioni:
✓ Match case consente di rendere la ricerca del pattern case sensitive;
✓ Find whole words only permette di ignorare eventuali occorrenze del pattern all'interno di parole più lunghe;
✓ Default match length consente di impostare quale tipo di stringa, corrispondente al pattern ricercato, restituire in output;
✓ Max match size permette di definire la lunghezza massima ammessa per la stringa corrispondente al pattern cercato;
✓ Allow comments in pattern permette di includere, nel pattern da cercare, anche eventuali commenti tipici del linguaggio Perl;
✓ '.' matches newline consente di considerare il punto come metacarattere corrispondente a qualsiasi carattere, compreso l'a capo;
✓ Enable UTF-8 support permette di abilitare la ricerca del pattern anche su dati con codifica UTF-8.
L'opzione Default match length può assumere i valori:
✓ Shortest match restituisce la più breve stringa, corrispondente al pattern ricercato;
✓ Longest match restituisce la più lunga stringa, corrispondente al pattern ricercato.
In caso il Find type sia MSWord Pattern, Unicode (UTF-16LE) e Unicode pattern (UTF-16LE) è possibile personalizzare la ricerca del pattern mediante le opzioni:
✓ Match case consente di rendere la ricerca del pattern case sensitive;
✓ Find whole words only permette di ignorare eventuali occorrenze del pattern all'interno di parole più lunghe;
✓ Max match size lunghezza massima ammessa per la stringa corrispondente al pattern cercato;
La sostituzione del pattern, con il testo specificato nel secondo editor di testo, può essere personalizzata mediante i flag:
✓ Case sensitive replace consente di rendere la sostituzione case sensitive;
✓ Replace first only permette di limitare la sostituzione alla prima occorrenza del pattern da cercare;
✓ Remove not match consente di eliminare tutto il testo non corrispondente al pattern da cercare.
APPROFONDIMENTO: LA SOSTITUZIONE CASE SENSITIVE In caso il pattern da cercare abbia tutte le lettere maiuscole, il flag Case sensitive replace, se attivo, rende maiuscole anche le lettere del testo da sostituire. Viceversa, in caso il pattern da cercare abbia tutte le lettere minuscole, il flag Case sensitive replace, se attivo, rende minuscole anche le lettere del testo da sostituire. |
In caso di Find type di tipo pattern, è possibile valorizzare variabili con porzioni della stringa ricercata da riutilizzare nell'editor Replace with.
La valorizzazione della variabile avviene racchiudendo la parte di pattern desiderata tra parentesi tonde. Per richiamare il valore della variabile è necessario utilizzare la sintassi $n, dove n indica il numero ordinale della variabile nella definizione del pattern.
Infine il filtro Find and Replace può contenere eventuali sotto-filtri mediante i quali processare il testo da sostituire, prima del suo utilizzo.