Help in text comparison.
              in 
             Programming Questions 
              •  
              7 months ago    
            
 
           
             Hi all,
            
             
            
            
             
            
            
             
            
            
             
            
            
             
            
            
             
            
            
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
             
                
             
             
              
             
             
                      
             
             
                
             
             
                      
             
             
              
             
             
              
             
             
              
             
             
              
             
             
              
             
              
           
 
            
           
             I'm quite newbie in programming and imagine that this question will problably extremely easy to solve, but I can't get it, so any help will be very welcome.
            
            
             What i'm trying to do is comparing two text files (a dictionary and a book) and create different arrays with all the matches between both, so to say, i will end up having an array with x "democracy" terms, another with y "state" terms, and so on.
            
            
             Up to now i've been able to create a counter that counts all the matches between both so i have a counter of total matches, but I can't find the way to split this into different groups?. 
            
            
             Any ideas? Thxs a lot.
            
            
             Here is the code:
            
            
              String [] ficherotexto;
             
             
              String [] libropolitica;
             
             
              String textolibrojunto;
             
             
              String textolibrojuntoarray [];
             
             
              String tokens;
             
             
              int t, l, m;
             
             
              boolean c;
             
             
              int contador, contador2, contador3;
             
             
              ArrayList coincidencias;
             
             
              String [] coincidencias3;
             
             
              void setup () {
             
             
                size (100, 100);
             
             
                // Creo la matriz con el fichero a tratar
             
             
                String [] ficherotexto = loadStrings ("glosario_de_politica.txt");
             
             
                String [] libropolitica = loadStrings ("aristoteles_politica_parcial.txt");
             
             
                //Junto todo el texto en una string para que cada elemento no sea un parrafo sino
             
             
                //que junto todo el texto en una sola String. Asi los podré luego dividir en una array
             
             
                //de palabras que podré comparar con otra cosa.
             
             
                String textolibrojuntomay = join (libropolitica, ' ');
             
             
                //Paso todo el libro a minusculas
             
             
                String textolibrojunto= textolibrojuntomay.toLowerCase();
             
             
                //Convierto la cadena en matriz. Split solo se puede usar con cadenas, no con arrays.
             
             
                //Por eso he usado antes join, para convertir el texto en una unica String de texto,
             
             
                //y ahora la vuelvo a convertir en una Array de palabras con split.
             
             
                String [] textolibrojuntoarray  = split(textolibrojunto, ' ');
             
             
                //Elementos a quitar de la cadena
             
             
                String tokens = " ,.;:-_!?&\"□▫¶~ +%=()[]{}«»#&%§'|";
             
             
                //Convierto la variable-matriz en variable int
             
             
                int t= int (ficherotexto.length);// Numero de terminos del glosario de politica.
             
             
                int l= int (libropolitica.length);//Numero de parrafos del libro.
             
             
                int m= int (textolibrojuntoarray.length);// Numero de palabras del libro.
             
             
                println("num terminos del glosario: " + t);
             
             
                println("num parrafos del libro: " + l);
             
             
                println("num palabras del libro: " + m);
             
             
                //println (libropolitica);
             
             
                //println (textolibrojunto);
             
             
                //Matriz para las cpincidencias
             
             
                coincidencias = new ArrayList();  // crea nueva ArrayList vacia
             
             
                //Comparar los dos textos
             
             
                int matchedValues = 1;
             
             
                contador=0;
             
             
                contador2=0;
             
             
                contador3=0;
             
             
                for (int i=0; i < t; i++) {// este es el bucle del glosario
             
             
                   boolean c=true; 
             
             
                  contador++;
             
             
               c= false;
             
             
                  for (int j=0; j < m; j++) {// este es el bucle del libro de politica
             
             
                    // Comparar las dos matrices
             
             
                    if (ficherotexto[i].equals (textolibrojuntoarray[j]) == true) {
             
             
                      if (!c) { 
             
             
                       contador3++;
             
             
                println ("ok"+ contador3 );
             
             
                      } 
             
             
                 coincidencias.add (ficherotexto [i]);// incluye la entrada en el Arraylist(coincidencias).
             
             
                      println("Término: " +"'"+ ficherotexto[i]+"'" +" presente en el texto "+ matchedValues);
             
             
                      matchedValues++;
             
             
                      println (coincidencias);
             
             
                      contador2++;//si lo pongo aquí me da las veces que 
             
             
                      println (contador2);// encuentra una coincidencia.
             
             
                    }
             
             
                  }
             
             
                  //Aqui tengo que poner una linea para que mientras no cambie i haga una cadena que reuna todas las 
             
             
                  //repeticiones de un termino.
             
             
                  }
             
             
                  //println (contador2);
             
             
                }
             
             
              void draw () {
             
             
                background (255);
             
             
              }
             
             
              
              1  
            
 
            