Filtri Remove

Navigation:  Il Package: lavorazione dei dati > Arricchimento del Package > File Normalizer > I filtri del File Normalizer >

Filtri Remove

Previous pageReturn to chapter overviewNext page

La classe Remove contiene filtri che consentono di rimuovere caratteri o informazioni indesiderati, contenuti nel testo in input.

 

I filtri di tipo Backspaces permettono di gestire eventuali caratteri backspace indesiderati. In particolare:

Remove backspaces rimuove i soli backspace presenti nel testo in input;

Resolve backspaces rimuove sia i backspace sia i caratteri precedenti, da essi eliminati.

 

Il filtro HTML and XML consente di rimuovere qualsiasi tag da un file XML o HTML in input. In particolare elimina tutte le espressioni comprese tra brackets < >.

 

I filtri di tipo Remove lines consentono di rimuovere righe dal file di testo in input. In particolare:

Remove line range rimuove le righe contenute in un determinato intervallo;

Remove matching lines rimuove le righe contenenti testo corrispondente ad una specifico pattern;

Remove non-matching lines rimuove le righe non contenenti testo corrispondente ad una specifico pattern;

Remove lines from list rimuove le righe corrispondenti a una o più linee di testo;

Remove lines matching pattern list le righe corrispondenti a uno o più pattern.

 

Il filtro Remove line range richiede di selezionare il tipo di intervallo di righe da eliminare, mediante le seguenti opzioni:

line a .. line b rimuove tutte le righe tra la riga a e la riga b, comprese;

b lines starting at line a rimuove b righe a partire dalla riga a, compresa;

 b lines starting at line END – a rimuove b righe a partire da a righe precedenti l'ultima riga del testo in input;

line a .. line END – b rimuove tutte le righe comprese tra la riga a e b righe precedenti l'ultima riga del testo in input;

line END – a .. line END – b rimuove tutte le righe comprese tra a righe e b righe precedenti l'ultima riga del testo in input.

I numeri a e b, necessari alla definizione degli intervalli precedenti, sono rispettivamente specificati nei due riquadri sottostanti. Essi assumono intestazioni contestuali alla singola opzione selezionata.

 

warning

Il conteggio delle righe precedenti l'ultima riga del testo in input parte da 0, ossia:

l'ultima riga corrisponde a line END – 0;

la penultima riga corrisponde a line END – 1;

la terzultima riga corrisponde a line END – 2

e così via.

 

Il filtro Remove matching lines richiede di specificare, nell'omonimo campo, la regular expression corrispondente al pattern da cercare nel testo in input. L'opzione Pattern type permette, invece, di selezionare il tipo di regular expression da utilizzare. Essa può assumere i valori:

Pattern (perl), regular expression tipiche del linguaggio Perl;

Pattern (egrep), regular expression tipiche dei linguaggi Linux e Unix;

MSWord Pattern, regular expression tipiche dei campi di ricerca Windows.

 

Il confronto tra regular expression e testo in input può essere reso case insensitive attivando il flag Ignore Case. Altri flag consentono, invece, di specializzare l'output dell'applicazione del filtro:

Output Count of matches espone in output anche il numero di occorrenze del pattern nel testo in input, corrispondente al numero di righe rimosse;

Include line numbers associa ad ogni riga estratta il corrispondente numero di riga nel testo in input;

UTF-8 Support converte il pattern da estrarre in formato UTF-8;

Ignore Empty Matches ignora ogni occorrenza del pattern priva di testo.

 

Inoltre, in caso l'input del sottostante Text Link sia una lista di file, è possibile associare alle righe estratte il percorso assoluto del corrispondente file, attivando il flag Include file name.

 

Il filtro Remove lines NOT matching si configura in modo analogo al filtro Extract lines matches, ma espone in output le sole righe che non contengono il pattern specificato.

 

Il filtro Remove lines from list consente di rimuovere dal testo in input le righe corrispondenti a una o più linee di testo. Esse possono essere:

 lette da un file di testo presente sul file system, selezionando l'opzione From File;

 specificate manualmente nell'apposito editor di testo, selezionando l'opzione From Text.

 

warning

Le singole linee di testo, da ricercare all'interno del testo in input, devono essere separate da un a capo.

 

Infine, è anche possibile rendere la ricerca del testo case sensitive, attivando il flag Match Case.

 

Il filtro Remove lines matching pattern list consente di rimuovere dal testo in input le righe corrispondenti a uno o più pattern. Essi possono essere:

 contenuti in un file di testo presente sul file system, selezionando l'opzione From File;

 specificati manualmente nell'apposito editor di testo, selezionando l'opzione From Text.

 

warning

I singoli pattern, da ricercare all'interno del testo in input, devono essere:

 specificati mediante regular expression del linguaggio Perl;

 separati da un a capo.

 

Infine, è anche possibile rendere la ricerca dei pattern all'interno del testo in input case sensitive, attivando il flag Match Case.

 

Il filtro Columns consente di rimuovere caratteri, compresi in un determinato intervallo di posizioni sulle righe del file di testo in input. Esso richiede di selezionare il tipo di intervallo, mediante le seguenti opzioni:

Column a .. Column b rimuove tutti i caratteri tra la posizione a e la posizione b, comprese;

b Columns starting at Column a rimuove b caratteri a partire dalla posizione a, compresa;

 b Columns starting at Column END – a rimuove b caratteri a partire da a posizioni precedenti l'ultimo carattere di una riga;

Column a .. Column END – b rimuove tutte i caratteri compresi tra la posizione a e b posizioni precedenti l'ultimo carattere di una riga;

Column END – a .. Column END – b rimuove tutti i caratteri compresi tra a posizioni e b posizioni precedenti l'ultimo carattere di una riga.

I numeri a e b, necessari alla definizione degli intervalli precedenti, sono rispettivamente specificati nei due riquadri sottostanti. Essi assumono intestazioni contestuali alla singola opzione selezionata.

 

warning

Il conteggio delle posizioni precedenti l'ultimo carattere di una riga parte da 0, ossia:

l'ultimo carattere corrisponde a Column END – 0;

il penultimo carattere corrisponde a Column END – 1;

il terzultimo carattere corrisponde a Column END – 2

e così via.

 

Il filtro Delimited fields permette di eliminare uno o più campi di un file a campi delimitati da uno specifico carattere. Questo filtro richiede di specificare:

il tipo di carattere che delimita i singoli campi;

il tipo di intervallo da cui eliminare i campi nelle singole righe del testo in input.

 

Il filtro Delimited fields supporta file con campi delimitati da:

virgole, ossia i classici file CSV;

tab;

punti e virgola;

pipe.

Tuttavia è possibile specificare ulteriori separatori personalizzati, mediante il campo Other.

 

Il tipo di intervallo di campi da eliminare può essere specificato mediante le seguenti opzioni:

Field a .. Field b rimuove tutti i campi tra il campo a e il campo b, compresi;

b Fields starting at Field a rimuove b campi a partire dal campo a, compreso;

 Fields starting at Field END – a rimuove b campi a partire da a campi precedenti l'ultimo campo di una riga;

Field a .. Field END – b rimuove tutti i campi compresi tra il campo a e b campi precedenti l'ultimo campo di una riga;

Field END – a .. Field END – b rimuove tutti i campi compresi tra a campi e b campi precedenti l'ultimo campo di una riga.

 

info

Il nome delle tipologie di intervallo selezionabili è sempre preceduto da un prefisso, che indica il tipo di delimitatore scelto per il testo in input.

 

I numeri a e b, necessari alla definizione degli intervalli di campi da eliminare, sono rispettivamente specificati nei due riquadri sottostanti. Essi assumono intestazioni contestuali alla singola opzione selezionata.

 

warning

Il conteggio dei campi precedenti l'ultimo campo di una riga del testo in input parte da 0, ossia:

l'ultimo campo corrisponde a Field END – 0;

il penultimo campo corrisponde a Field END – 1;

il terzultimo campo corrisponde a Field END – 2

e così via.

 

In caso la prima riga del testo in input contenga le intestazioni dei campi, è possibile tenere traccia del numero di campi attesi in input, attivando il flag First Row contains Field Names. In questo modo il filtro è in grado di determinare se un campo incorpora eventuali caratteri di fine riga, estendendosi su più righe.

 

Il filtro Byte Range consente di rimuovere caratteri, compresi in un determinato intervallo di byte nelle righe del file di testo in input. Esso richiede di selezionare il tipo di intervallo, mediante le seguenti opzioni:

Byte a .. Byte b rimuove tutti i caratteri tra il byte in posizione a e il byte in posizione b, compresi;

b Bytes starting at Byte a rimuove i caratteri corrispondenti a b byte, calcolati a partire dal byte in posizione a, compreso;

 b Bytes starting at Byte END – a rimuove b i caratteri corrispondenti a b byte, calcolati a partire da a byte precedenti l'ultimo byte di una riga;

Byte a .. Byte END – b rimuove tutti i caratteri compresi tra il byte in posizione a e b byte precedenti l'ultimo byte di una riga;

Byte END – a .. Byte END – b rimuove tutti i caratteri compresi tra a byte e b byte precedenti l'ultimo byte di una riga.

I numeri a e b, necessari alla definizione degli intervalli precedenti, sono rispettivamente specificati nei due riquadri sottostanti. Essi assumono intestazioni contestuali alla singola opzione selezionata.

 

warning

Il conteggio dei byte precedenti l'ultimo byte di una riga del testo in input parte da 0, ossia:

l'ultimo byte corrisponde a Byte END – 0;

il penultimo byte corrisponde a Byte END – 1;

il terzultimo byte corrisponde a Byte END – 2

e così via.

 

Il filtro Blank lines rimuove eventuali righe vuote presenti sul file di testo in input.

 

warning

Il filtro Blank Lines ignora righe prive di testo, ma contenenti spazi o tab.

 

Il filtro Blanks from End of Line rimuove eventuali spazi o tab alla fine di ogni riga del file di testo in input. Viceversa, il filtro Blanks from Start of Line elimina eventuali spazi o tab all'inizio di ogni riga del file di testo in input.

 

Il filtro Binary characters consente di rimuovere eventuali caratteri binari presenti nel testo in input.

 

info

Per caratteri binari si intendono tutti i caratteri con codice ASCII maggiore a 127 e minore a 32, ad eccezione del carattere di fine riga (codice ASCII 10) e dell'a capo (codice ASCII 13).

 

Il filtro ANSI codes permette di rimuovere particolari caratteri di controllo e di formattazione da testi prodotti, ad esempio, da sistemi BBS (Bulletin Board System).

 

Il filtro Multiple whitespace consente di sostituire eventuali spazi multipli e tab con un unico spazio.

 

Il filtro Remove email headers rimuove le eventuali intestazioni che accompagnano e-mail esportate in formato testo. In particolare esso consente di eliminare:

le righe di mittente, destinatario ed oggetto del messaggio;

eventuali altre intestazioni aggiunte dai server attraversati dal messaggio prima di giungere a destinazione;

la riga vuota inserita automaticamente prima del messaggio effettivo.

 

Il filtro All rimuove tutto il testo in input. Esso particolarmente utile in qualità di sotto-filtro, per rimuovere in modo definitivo il testo selezionato da un filtro precedente.

 

Il filtro Remove duplicates lines permette di rimuovere eventuali righe duplicate, anche non consecutive. In particolare, tra le righe duplicate, viene mantenuta solo la prima.

Il filtro Remove duplicates lines richiede di specificare:

Start Column, numero ordinale del carattere da cui iniziare il confronto tra righe, per l'identificazione di duplicati;

Length, numero di caratteri da confrontare a partire dalla Start Column.

 

info

Le opzioni Start Column e Length permettono di escludere dal confronto eventuali caratteri di inizio/fine linea, quali i numeri di riga.

 

Infine il confronto fra righe, per l'identificazione di duplicati, può essere reso case insensitive, attivando il flag Ignore case.

 

Il filtro Remove head or tail permette di:

mantenere un certo numero di righe o caratteri del testo in input, rimuovendo gli altri;

rimuovere un certo numero di righe o caratteri dal testo in input.

 

Il riquadro Include or Exclude consente di specificare la modalità di applicazione del filtro:

Include mantiene una parte del testo rimuovendo l'altra;

Exclude rimuove una parte del testo.

La parte di testo da rimuovere o mantenere è specificata sotto forma di numero di unità, mediante il riquadro a destra delle opzioni Include ed Exclude.

 

Il tipo di unità, mediante la quale identificare il testo da mantenere o rimuovere, può essere specificato mediante le opzione del riquadro Counting units:

Lines considera le righe come unità di misura;

Characters considera i singoli caratteri come unità di misura.

 

Infine il riquadro Where to count from consente di specificare il punto di partenza per il conteggio della porzione di testo da mantenere/rimuovere. In particolare è possibile iniziare tale conteggio dall'inizio o dalla fine del file.

 

Il filtro Remove pattern permette di eliminare uno specifico pattern, dal testo in input. Esso richiede di specificare:

il tipo di pattern, mediante l'opzione Find type;

il pattern da cercare e rimuovere, nell'apposito editor di testo.

 

L'opzione Find type può assumere i valori:

Exact ricerca e rimuove tutte le occorrenze che corrispondono esattamente al testo specificato;

Sounds like ricerca e rimuove tutte le occorrenze la cui pronuncia assomiglia al testo specificato, ma che si differenziano per alcuni caratteri;

Edit distance ricerca e rimuove tutte le occorrenze che possono essere ricondotte al testo specificato mediante un numero prefissato di operazioni (e.g. sostituzione o cancellazione di un carattere);

Pattern (perl) ricerca e rimuove tutte le occorrenze che corrispondono ad una regular expression del linguaggio Perl;

MSWord Pattern ricerca e rimuove tutte le occorrenze che corrispondono ad una regular expression del linguaggio Windows;

Unicode (UTF-16LE) ricerca e rimuove tutte le occorrenze che corrispondono esattamente ad un testo in formato Unicode;

Unicode pattern (UTF-16LE) ricerca e rimuove tutte le occorrenze  che corrispondono ad un pattern in formato Unicode.

 

warning

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 e rimuovere, 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.