Contador de palabras en .NET Core 2.0
Después de los ejemplos típicos de «hola mundo» y de un convertidor de distancias en .NET Core que nos sirviera para abrir boca, voy a escribir esta entrada que consistirá en crear un proyecto de .NET Core 2.0 con Visual Studio 2017 que contará las palabras de un texto.
Un sencillo ejemplo para continuar adentrándonos en .NET Core.
Nota: usaré .NET Core 2.0.
Lo primero que haremos será iniciar Visual Studio 2017 y crear un proyecto nuevo con la plantilla .NET Core.
Le daré el nombre de CountWords, tal y como puedes ver en la siguiente imagen.
Dentro del proyecto, agregaré una clase llamada Counter.cs.
En el Explorador de Soluciones de Visual Studio 2017, tendremos algo parecido a esto:
El código fuente de la clase Counter.cs es el que se indica a continuación:
namespace CountWords { using System; public class Counter { public int WordsFromText(string text) { string[] source = text.Split(new char[] { '.', '?', '!', ' ', ';', ':', ',' }, StringSplitOptions.RemoveEmptyEntries); return source.Length; } } }
Por su parte, el código de la clase Program.cs queda de la siguiente forma:
namespace CountWords { using System; public class Program { public static void Main(string[] args) { Console.WriteLine("Write a text:"); var text = Console.ReadLine(); var counter = new Counter(); Console.WriteLine(counter.WordsFromText(text).ToString()); Console.ReadLine(); } } }
Si ejecutamos nuestro ejemplo desde Visual Studio 2017, obtendremos algo parecido a lo que se indica a continuación:
Como podemos ver, sobre todo si tenemos experiencia en el desarrollo de aplicaciones con .NET, no encontraremos prácticamente diferencias.
Program.cs tiene un método de inicio Main que es la puerta de entrada al proyecto.
CountWords.csproj indica que se trata de una aplicación de consola y que se compilará con .NET Core 2.0.
La ejecución la hace automáticamente Visual Studio 2017, pero desde una línea de comandos podríamos también lanzar la compilación y ejecución de nuestra aplicación.
Puedes acceder al código fuente del ejemplo en este enlace.
¡Happy Coding!
One Responseso far
es bueno pero a la hora de separar oraciones falla, si el usuario ingresa mas de un espacio