示例#1
0
        public ResultadoAnalisisTexto AnalizarTextoOld(string texto)
        {
            var res    = new ResultadoAnalisisTexto();
            var buffer = texto.Replace(_alfabeto.SeparadorParrafosCompleto, _alfabeto.SeparadorParrafos.ToString()).ToCharArray();

            try
            {
                int  palabrasXOracion = 0;
                bool antEspecial      = false;
                for (var i = 0; i < buffer.Length; i++)
                {
                    if (carEspeciales.Contains(buffer[i]))
                    {
                        // Se evita el caso de varios caracteres especiales seguidos
                        if (!antEspecial)
                        {
                            antEspecial = true;
                            palabrasXOracion++;
                            if (palabrasXOracion == 16)
                            {
                                res.OracionesConMasDe15Pal++;
                            }
                        }

                        if (buffer[i] == _alfabeto.SeparadorOraciones)
                        {
                            palabrasXOracion = 0;
                        }
                        else if (buffer[i] == _alfabeto.SeparadorParrafos)
                        {
                            res.Parrafos++;
                            palabrasXOracion = 0;
                        }

                        if (i > 0 && buffer[i - 1] == 'n')
                        {
                            res.PalabrasTerminadasEnn++;
                        }
                    }
                    else
                    {
                        antEspecial = false;
                        if (!carExcluidos.Contains(buffer[i]))
                        {
                            res.NumeroCaracteresDistintosANn++;
                        }
                    }
                }
            }
            finally
            {
                buffer = null;
            }
            return(res);
        }
示例#2
0
 public void GuardarDatos(Transversal.Entidades.DatosAnalisisTexto datos, ResultadoAnalisisTexto resultado)
 {
     Task.Factory.StartNew(() =>
     {
         using (var archivo = new System.IO.StreamWriter(System.IO.Path.Combine(_rutaArchivos, string.Format(_nombreArchivo, datos.IdCliente, datos.IdPeticion))))
         {
             archivo.WriteLine("ESTADISTICAS");
             archivo.Write("Palabras Terminadas en con la letra n: ");
             archivo.WriteLine(resultado.PalabrasTerminadasEnn);
             archivo.Write("Oraciones con más de 15 palabras: ");
             archivo.WriteLine(resultado.OracionesConMasDe15Pal);
             archivo.Write("Parrafos: ");
             archivo.WriteLine(resultado.Parrafos);
             archivo.Write("Caractes Alfanumericos distintos a n o N: ");
             archivo.WriteLine(resultado.NumeroCaracteresDistintosANn);
             archivo.WriteLine("TEXTO");
             archivo.Write(datos.Texto);
         }
     });
 }