ForHosting KIT · Testi e IA

Trovare righe comuni in due testi

Confronti apple, banana, cherry, banana, pear con pear, banana, orange, banana e otterrà banana e pear: ogni riga comune una sola volta, nell'ordine del primo elenco. Il confronto è esatto per impostazione predefinita, con l'opzione di ignorare le maiuscole. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Testo a
apple banana cherry banana pear
Testo b
pear banana orange banana
Ottiene
Testo
banana pear
Righe comuni
banana, pear
Numero in comune
2
Righe del testo A
5

Individuare la sovrapposizione tra due elenchi incollati non dovrebbe richiedere una formula del foglio di calcolo, una pipeline shell o un controllo manuale meticoloso. Questo strumento confronta due testi su più righe e restituisce le righe uniche presenti in entrambi. I risultati seguono l’ordine del primo testo, risultando prevedibili e facili da incollare in un altro flusso. Per impostazione predefinita il confronto è esatto, quindi spazi, punteggiatura e maiuscole restano significativi. Una modalità facoltativa senza distinzione tra maiuscole e minuscole può abbinare Apple ad apple, mantenendo la grafia originale del primo testo.

Come funziona il confronto delle righe comuni

La capacità considera ogni input come una sequenza di righe e calcola l’intersezione insiemistica tra le due sequenze. Prima converte le terminazioni contenenti ritorni a capo in normali caratteri di nuova riga: in questo modo un elenco Windows e uno Unix possono essere confrontati senza false differenze dovute soltanto al formato del file. Ogni riga del secondo testo diventa una chiave di ricerca.

Il primo testo viene poi esaminato dall’alto verso il basso e una riga viene emessa quando la sua chiave esiste nel secondo insieme e non è ancora stata emessa. Ogni riga condivisa compare così una sola volta, nell’ordine della prima occorrenza nel primo testo. Il confronto predefinito è esatto: spazi iniziali e finali, punteggiatura, accenti e maiuscole influiscono sull’uguaglianza.

Le righe vuote sono valori legittimi e compaiono una volta se presenti in entrambi gli input.

Flussi pratici per l’intersezione di elenchi

Il confronto delle righe comuni è utile quando due sistemi esportano un valore per riga e Lei deve conoscerne la sovrapposizione. Chi gestisce i rilasci può confrontare i pacchetti di due distribuzioni per vedere quali dipendenze condividono. Un gruppo di analisi può incollare segmenti di clienti provenienti da report distinti e ottenere gli identificatori presenti in entrambi senza caricare una cartella di lavoro o scrivere un join.

I team editoriali possono confrontare parole chiave, tag o URL conservando l’ordine di priorità della prima fonte. È inoltre possibile incrociare elenchi di vocaboli, presenze o codici di magazzino. Per i dati sensibili, ricordi che il confronto è letterale e non semantico: non stabilisce se domini, nomi o percorsi simili rappresentano la stessa entità.

Non elimina gli spazi, non normalizza Unicode, non ordina i risultati, non conta le ripetizioni e non calcola le righe esclusive di un solo lato. Sono scelte intenzionali, perché una pulizia invisibile potrebbe unire valori da mantenere distinti. Prepari o normalizzi prima gli elenchi quando il flusso lo richiede, poi usi questa capacità per un’intersezione trasparente.

L’array è comodo nelle applicazioni, mentre il testo unito è pronto da copiare.

Confrontare elenchi di identificatori

Trovi account, prodotti o chiavi presenti nelle esportazioni di due sistemi, conservando l’ordine della prima.

Incrociare tag e parole chiave

Individui tag, termini o categorie condivisi, con confronto facoltativo senza distinzione tra maiuscole e minuscole.

Controllare inventari di distribuzione

Confronti inventari di pacchetti o servizi, uno per riga, e restituisca le voci uniche presenti in entrambi gli ambienti.

Le righe comuni ripetute vengono restituite più volte?

No. Ogni riga corrispondente viene restituita una volta, anche se compare più volte in uno degli input.

Lo strumento ignora gli spazi attorno a una riga?

No. Gli spazi sono significativi: una riga con spazi finali differisce dalla stessa riga senza quegli spazi.

In che ordine compaiono le righe comuni?

Nell'ordine in cui appaiono per la prima volta nel primo testo, mai in ordine alfabetico né secondo il secondo elenco. Per questo l'esempio dà banana prima di pear, anche se pear viene prima nel secondo elenco.

Righe che differiscono solo per le maiuscole possono coincidere?

Sì, attivi l'opzione che ignora le maiuscole e Apple coinciderà con apple. Il risultato mantiene la grafia del primo testo, quindi le maiuscole originali non vanno perse.

Mostra anche le righe presenti in un solo elenco?

No. Restituisce solo l'intersezione, cioè le righe presenti in entrambi i testi. Non indica ciò che manca da una parte o dall'altra, non ordina il risultato e non conta quante volte si ripete una riga.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/str/common-lines

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/str/common-lines \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text_a":"apple\nbanana\ncherry\npear","text_b":"banana\npear\norange"}'
{
  "text_a": "apple\nbanana\ncherry\npear",
  "text_b": "banana\npear\norange"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.common_lines",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

max_chars_per_text65536
HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Le terminazioni di riga di Windows, Unix e dei vecchi Mac vengono normalizzate prima del confronto; la stessa funzione deterministica gestisce browser e API.

Come funziona il confronto delle righe comuni

Se ignore_case è attivo, solo le chiavi di confronto vengono convertite in minuscolo; il valore restituito conserva la grafia originale del primo testo. L’algoritmo svolge scansioni lineari limitate senza rete, modelli, casualità od orologio, quindi input identici producono sempre lo stesso JSON.

Come scegliere gli input e leggere il risultato

Ogni campo accetta fino a 65,536 caratteri. La modalità esatta è adatta a nomi utente sensibili alle maiuscole, chiavi di configurazione, hash, percorsi e codici nei quali ogni carattere conta. I duplicati in qualsiasi sorgente non duplicano mai l’output, perché si tratta di un’intersezione di insiemi e non dell’abbinamento delle occorrenze. Invii text_a e text_b come stringhe non vuote contenenti gli elenchi o i blocchi di testo da confrontare. Separi gli elementi con nuove righe e ometta ignore_case, oppure lo lasci su false, quando gli identificatori devono coincidere esattamente. Attivi ignore_case per categorie, prodotti, tag o elenchi di domini in cui l’uso delle maiuscole non è significativo. La risposta contiene text, una versione unita da nuove righe e pronta da copiare; common_lines, gli stessi valori come array JSON; e common_count, il numero di righe condivise uniche. Riporta inoltre i conteggi delle righe normalizzate dei due input e l’opzione ignore_case applicata. L’ordine deriva da text_a, non da text_b né da un ordinamento alfabetico. Un valore mancante, vuoto, non testuale o oltre il limite restituisce invalid_input. L’elaborazione API riuscita costa $0.002 per elemento, mentre il browser esegue localmente la stessa logica pura.

Quale input determina l’ordine del risultato?

Il primo testo determina l’ordine. Le righe condivise seguono la prima occorrenza in text_a.

Che cosa modifica ignore_case?

Confronta chiavi in minuscolo, ma conserva nel risultato la grafia originale di text_a.

Quanto costa una richiesta API?

Una richiesta API riuscita costa $0.002 per elemento. La versione web esegue localmente la stessa logica deterministica.

Leggi la documentazione completa del KIT →