Confronto liste
Confronta due elenchi e trova gli elementi comuni o esclusivi.
Come si usa
Incolla due elenchi per vedere che cosa condividono, che cosa ha solo il primo e che cosa ha solo il secondo: le tre risposte che servono quando si riconcilia un’esportazione con un sistema, o l’elenco del mese scorso con quello di questo mese.
Ogni riga è un elemento. Virgole, punti e virgola e tabulazioni non sono separatori, quindi “apple, pear” su una sola riga è un unico elemento; una colonna copiata da un foglio di calcolo si incolla con un valore per riga, che è proprio ciò che vuoi. Tre opzioni, tutte attive per impostazione predefinita, decidono quando due righe contano come uguali: «Ignora maiuscole/minuscole», «Rimuovi gli spazi esterni» e «Ignora le righe vuote». Ogni risultato mantiene l’elemento come l’hai scritto e nel suo ordine originale; quando due grafie differiscono solo per maiuscole e minuscole, «In entrambi gli elenchi» mostra quella dell’elenco A. Il confronto avviene nel browser e gli elenchi non vengono caricati da nessuna parte.
Questa è aritmetica di insiemi, quindi le ripetizioni interne a un elenco si riducono a una sola prima del confronto: dice quali valori compaiono, mai quante volte. Se conta che un valore compaia due volte — un addebito doppio, una riga duplicata — quella è un’altra domanda, e togliere prima i duplicati la nasconde. Le trappole di normalizzazione sono le solite: uno spazio finale o un apostrofo diverso mettono un elemento in «Solo nell’elenco A» mentre lo vedi benissimo in B.
Esempio
Due elementi compaiono in entrambe le liste; ciascuna lista contiene anche un elemento esclusivo.
L’esempio integratoElenco A: apple, banana, orange. Elenco B: banana, pear, orange. In entrambi gli elenchi: banana e orange. Solo nell’elenco A: apple. Solo nell’elenco B: pear.Nomi con maiuscole diverseAna Silva in A e ANA SILVA in B coincidono finché «Ignora maiuscole/minuscole» è attiva, e «In entrambi gli elenchi» mostra Ana Silva. Disattivala e ciascuno compare solo nel proprio elenco.Una riga ripetutaINV-104 due volte in A e una volta in B: «In entrambi gli elenchi» lo mostra una sola volta, con un conteggio di 1. Il confronto non indica mai quante volte un valore è stato ripetuto.Uno spazio finale“banana ” in A e “banana” in B sono lo stesso elemento finché «Rimuovi gli spazi esterni» è attiva. Disattivala e uno finisce in «Solo nell’elenco A», l’altro in «Solo nell’elenco B».
Domande frequenti
Conta quante volte compare un valore?
No. Ogni elenco viene prima ridotto ai suoi valori distinti, quindi tre copie della stessa riga contano una sola volta. Quando ciò che interessa è proprio il conteggio — riconciliare quantità, trovare un pagamento doppio — confronta i conteggi a parte; un confronto tra insiemi ti dirà tranquillamente che torna tutto.
Un elemento è in entrambi gli elenchi ma risulta solo in A, perché?
Le due copie non sono identiche come testo. Attiva «Rimuovi gli spazi esterni» e «Ignora maiuscole/minuscole»: questo risolve quasi tutto. Ciò che resta è di solito un carattere che sembra un altro e non lo è: uno spazio unificatore, un apostrofo tipografico o una lettera accentata salvata in due modi diversi.
Posso incollare un elenco separato da virgole?
Non così com’è: ogni riga è un elemento, quindi un’intera riga separata da virgole conta come uno solo. Metti un valore per riga — una colonna di un foglio di calcolo si incolla così — oppure sostituisci prima le virgole con degli a capo.
Gli indirizzi email vanno confrontati ignorando le maiuscole?
Di solito sì. Secondo lo standard dell’email (RFC 5321) il dominio dopo la @ non distingue mai tra maiuscole e minuscole, mentre se Ana e ana prima della @ siano la stessa casella dipende dal server di destinazione; usare le maiuscole per distinguere le caselle è sconsigliato e i grandi provider non lo fanno. Tieni l’opzione disattivata solo se il tuo sistema tratta i due indirizzi come diversi.