function limpiar_docs($dir) { $dird = $dir . ".txt"; exec("pdftotext {$dir} {$dird}"); $contenido = ""; $contenido = file_get_contents($dird); //leer el archivo .txt $contenido = strtolower($contenido); //a minusculas $p = array('/À/', '/Â/', '/Ã/', '/Ä/', '/Å/', '/È/', '/Ê/', '/Ë/', '/Ì/', '/Î/', '/Ï/', '/Ò/', '/Ô/', '/Õ/', '/Ö/', '/Ø/', '/Ù/', '/Û/', '/Ü/', '/Á/', '/É/', '/Í/', '/Ó/', '/Ú/', '/á/', '/é/', '/í/', '/ó/', '/ú/', '/à/', '/è/', '/ì/', '/ò/', '/ù/', '/â/', '/ê/', '/î/', '/ô/', '/û/', '/ä/', '/ë/', '/ï/', '/ö/', '/ü/', '/ã/', '/å/', '/õ/', '/ø/', '/ç/', '/ÿ/', '/Ñ/', '//', '/1/', '/2/', '/3/', '/4/', '/5/', '/6/', '/7/', '/8/', '/9/', '/0/'); $r = array('a', 'a', 'a', 'a', 'a', 'e', 'e', 'e', 'i', 'i', 'i', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'a', 'o', 'o', 'c', 'y', 'ñ', '', '', '', '', '', '', '', '', '', '', ''); $contenido = preg_replace($p, $r, $contenido); //reemplazar vocales con acentos, entre otros. $contenido = ereg_replace("[^A-Za-z0-9 '\n'ñ]", "", $contenido); //quitar caracteres especiales. $stopwords_file = "stopwords.txt"; //a esta funcion se le pasa la variable con el contenido limpio y el archivo que contiene las stopwords. $contenido = stop_words($contenido, $stopwords_file); //funcion que elimina todas las stopwords $contenido = str_replace("\n", " ", $contenido); $contenido = str_replace("\r", " ", $contenido); $contenido = str_replace("\\b", " ", $contenido); $contenido = str_replace("\t", " ", $contenido); $contenido = quitar_espacios_dobles($contenido); //Se reemplaza el archivo que tenia el texto sin limpiar, con el texto limpio. $fp = fopen($dird, 'w'); fwrite($fp, $contenido, strlen($contenido)); fclose($fp); }
$stopwords_file = "stopwords.txt"; $lista = explode(",", $_POST['txtConsulta']); $nkey = count($lista); for ($i = 0; $i < $nkey; $i++) { $lista[$i] = strtolower($lista[$i]); } $p = array('/À/', '/Â/', '/Ã/', '/Ä/', '/Å/', '/È/', '/Ê/', '/Ë/', '/Ì/', '/Î/', '/Ï/', '/Ò/', '/Ô/', '/Õ/', '/Ö/', '/Ø/', '/Ù/', '/Û/', '/Ü/', '/Á/', '/É/', '/Í/', '/Ó/', '/Ú/', '/á/', '/é/', '/í/', '/ó/', '/ú/', '/à/', '/è/', '/ì/', '/ò/', '/ù/', '/â/', '/ê/', '/î/', '/ô/', '/û/', '/ä/', '/ë/', '/ï/', '/ö/', '/ü/', '/ã/', '/å/', '/õ/', '/ø/', '/ç/', '/ÿ/', '/Ñ/', '//', '/1/', '/2/', '/3/', '/4/', '/5/', '/6/', '/7/', '/8/', '/9/', '/0/'); $r = array('a', 'a', 'a', 'a', 'a', 'e', 'e', 'e', 'i', 'i', 'i', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'a', 'a', 'o', 'o', 'c', 'y', 'ñ', '', '', '', '', '', '', '', '', '', '', ''); for ($i = 0; $i < $nkey; $i++) { $lista[$i] = preg_replace($p, $r, $lista[$i]); $lista[$i] = ereg_replace("[^A-Za-z0-9 '\n'ñ]", "", $lista[$i]); $lista[$i] = str_replace("\n", " ", $lista[$i]); $lista[$i] = str_replace("\r", " ", $lista[$i]); $lista[$i] = str_replace("\\b", " ", $lista[$i]); $lista[$i] = str_replace("\t", " ", $lista[$i]); $lista[$i] = stop_words($lista[$i], $stopwords_file); $lista[$i] = quitar_espacios_dobles($lista[$i]); } //Quitar los espacios que quedan cuando en la consulta un palabra clave es un stopword. for ($i = 0; $i < $nkey; $i++) { if ($lista[$i] == "") { unset($lista[$i]); } } $lista = array_values($lista); /* //Mostar resultado de la lista echo "Lista de palabras claves<br>"; for($i=0; $i<count($lista); $i++) echo "Palabra[".$i."]= ".$lista[$i]."<br>";