Domanda

Qualcuno sa di una libreria o un pezzo di software là fuori che individuare le irregolarità nel testo? Ad esempio, consente di dire che ho ...

1. Name 1, Comment
2. Name 2, Comment
3. Name 3 , Comment
5. Name 10, Comment

Questo software o libreria dovrebbe prima tagliare porzioni di testo che avrebbe trovato simile (molto simili un pezzo di software di compressione sarebbe codificare ripetitivi porzioni simili di testo per comprimere verso il basso), ma utilizzando una variabile per la tolleranza di errore si potrebbe trovare simile porzioni di testo, ora molto simili un'applicazione confronto di testo o strumento diff / merge potrebbe effettivamente evidenziare ciò che vede come diverso. Sto pensando di fare forse questo strumento ma non desiderare di reinventare la ruota. Se c'è qualcosa là fuori da qualche parte a distanza capace di questo mi piacerebbe davvero sapere per aiutare possibilmente su questo progetto o almeno sanno di non fare uno. Per non parlare questa risposta potrebbe aiutare altre persone a caccia per la stessa cosa, penserei la domanda sarebbe abbastanza alta per la fornitura è per questo che boggles mia mente che non riesco a trovare nulla.

È stato utile?

Soluzione

A seconda di quale tipo di irregolarità di vita reale che si desidera trovare o risolvere il problema è radicalmente diversa.

Ecco il vostro esempio aggiornato con il testo vero e proprio:

1. Lazarus Long, Get the first shot off fast.
2. Hiro Protagonist, Greatest swordfighter[sic] in the world.
3. Alice , Down the rabbit hole.
5. Orem, Sink of power.

In questo esempio gli errori potrebbero essere fissati con un editor di testo decente con trovare una sostituzione. Editor di testo e editor esadecimale può fare miracoli se si ottiene creativo con caratteri jolly. Il problema rimane semplice a patto che i fattori di delimitazione sono in atto (. O,). Come avrete probabilmente già sapere; non appena uno di quelli che manca il problema diventa molto più complesso.

Esempio di un problema difficile:

1. Lazarus Long, Get the first shot off fast.
 2. Hiro Protagonist  Greatest swordfighter[sic] in the world.
3. Alice , Down the rabbit hole.
5 . Orem, , Sink of power.

Io probabilmente attaccare questo in pochi passaggi. 1. Pulire spazi aggiuntivi. 2. Scopri le statistiche chiave, come il numero di delimitatori per linea e il numero medio di parole o caratteri per colonna delimitato. La maggior parte dei nomi sono una o due parole, i commenti sono sconosciuti o limitata da ingresso. 3. Trovare linee con un numero statisticamente improbabile delle caratteristiche chiave. 4. Fate del vostro meglio per correggerli.

Mi rendo conto che questo non è risolvere direttamente il problema, ma forse un idea può patch per il problema sopra per un po '. E 'possibile che Wright ruota ultimi non hanno completato tutti i disegni.

Altri suggerimenti

Se siete in Python, si potrebbe provare difflib .

Non è una soluzione esatta al vostro problema, ma potrebbe essere utile.

Suoni fondamentalmente come che ci si vuole utilizzare Regex per creare una "risposta ideale" quindi confrontare il resto delle linee contro di esso.

In alternativa è possibile scrivere un programma più complesso che sarebbe bollire ogni linea giù in una query Regex, e poi confrontare le query tra di loro per vedere quali sono differenti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top