viernes, 29 de mayo de 2026

Contar cuántas veces se repite una palabra en una cadena en C Sharp

Código del ejercicio:

using System.Text.RegularExpressions;

Console.Write("Ingresar texto: ");
string texto = Console.ReadLine();
Console.Write("Ingresar palabra: ");
string palabra = Console.ReadLine();
int c = new Regex(palabra, RegexOptions.Compiled | RegexOptions.IgnoreCase).Matches(texto).Count;
Console.Write($"La palabra '{palabra}' fue encontrado {c} veces.");
Console.ReadKey();

Definición de los códigos del ejercicio:

System.Text.RegularExpressions; --> la expresión regular es un patrón que se usa para analizar y verificar si el texto de entrada dado coincide o no con el patrón dado.
Console.Write() --> escribe un texto en pantalla.
string --> dato de tipo cadena de texto.
Console.ReadLine() --> lee un dato desde teclado.
int --> dato entero de 32 bits.
Regex --> representa una expresión regular inmutable. Contiene métodos para hacer coincidir texto, reemplazar texto o dividir texto.
| --> (a | b) el operador se utiliza para la alternativa a o b.
Matches --> se usa para encontrar todas las coincidencias en un Regex y devuelve una MatchCollection.
RegexOptions.Compiled --> especifica que la expresión regular se compila en un ensamblado. Esto produce una ejecución más rápida pero aumenta el tiempo de inicio.
RegexOptions.IgnoreCase --> hace búsquedas en modo insensible a mayúsculas y minúsculas.
Count --> cuenta el número de ocurrencias del patrón.
$"{}" --> interpolación de cadenas proporciona una sintaxis conveniente para concatenar varios valores para formar una cadena.
Console.ReadKey() --> escribimos el método Console.ReadKey() al final de nuestro código para mantener abierta la ventana de nuestra consola.

Explicación del Código:

Este programa permite ingresar un texto y una palabra. Luego busca cuántas veces aparece esa palabra dentro del texto y muestra el resultado en pantalla.

1. Importar la librería de expresiones regulares

using System.Text.RegularExpressions;

Se importa la librería RegularExpressions, que contiene la clase Regex. Esta clase permite realizar búsquedas avanzadas dentro de cadenas de texto.

2. Solicitar el texto

Console.Write("Ingresar texto: ");
string texto = Console.ReadLine();

Se muestra un mensaje para que el usuario ingrese un texto. El contenido escrito se guarda en la variable texto.

3. Solicitar la palabra a buscar

Console.Write("Ingresar palabra: ");
string palabra = Console.ReadLine();

Se solicita una palabra al usuario y se almacena en la variable palabra. Esta será la palabra que se buscará dentro del texto.

4. Buscar y contar las coincidencias

int c = new Regex(
    palabra,
    RegexOptions.Compiled | RegexOptions.IgnoreCase
).Matches(texto).Count;

Esta instrucción crea una expresión regular utilizando la palabra ingresada por el usuario.

  • new Regex(palabra): crea el patrón de búsqueda.
  • RegexOptions.Compiled: optimiza el rendimiento de la búsqueda.
  • RegexOptions.IgnoreCase: ignora diferencias entre mayúsculas y minúsculas.
  • Matches(texto): busca todas las coincidencias dentro del texto.
  • Count: devuelve la cantidad de coincidencias encontradas.

El resultado se guarda en la variable c.

5. Mostrar el resultado

Console.Write($"La palabra '{palabra}' fue encontrado {c} veces.");

Se muestra en pantalla la cantidad de veces que la palabra fue encontrada dentro del texto.

6. Esperar una tecla para finalizar

Console.ReadKey();

Mantiene la ventana de la consola abierta hasta que el usuario presione una tecla.

Resumen

El programa recibe un texto y una palabra. Luego utiliza la clase Regex para buscar todas las apariciones de esa palabra dentro del texto, sin importar si está escrita en mayúsculas o minúsculas. Finalmente muestra cuántas veces se encontró.

No hay comentarios.:

Publicar un comentario

Convertir metros a pies en cpp

Código del ejercicio: #include <iostream> using namespace std ; int main () {     double metro, convertir;     cout...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️