Anuncios
Anuncios

Bienvenidos sean a este post, hoy hablaremos sobre un tipo de dato particular porque si bien podemos usarla como un objeto tambien la podemos usar como si fuera un tipo simple o primitivo de variable.

La clase string se puede usar como una variable simple pero a su vez su clase nos provee de herramientas para poder manipular la informacion que almacenemos en ellas, tambien nos da la posibilidad de poder formatear nuestro texto por medio de caracteres de escape, si bien esta clase tiene una amplia difusion en los lenguajes modernos en los lenguajes tipo C o C++ no existe y se debe incluir por medio de una libreria llamada string.h, a su vez esta es una clase que trabaja gracias al tipo simple llamada char la cual solo almacena un caracter y desde tiempos inmemoriales para guardar una palabra o lo que sea se utilizaba un array de char pero no nos desviemos de las practicidades que nos brinda hoy en dia la clase del titulo, hablemos primero de algunos de los caracteres de escape:

CaracterDescripcion
\nNueva linea, equivale al Enter
\tHace una Tabulacion, Tab = 4 o 5 espacios
\bHace un backspace (retrocede un lugar)
\”Pone comillas dobles en el texto
\’Pone comillas simples en el texto
\\Agrega una barra invertida en el texto
\*Agrega un asterisco en el texto
Anuncios

En este caso, estos son algunos de los caracteres de escape que tendremos disponibles ya que no son todos pero si los que mas usaremos en nuestros textos, para entender este concepto vamos a crear un archivo llamado cadena.cs y le agregaremos el siguiente codigo:

Cadena.cs

using System;

public class Program
{
    public static int Main()
    {
        string texto;
        texto = "Esto es un texto de prueba.\n";
        texto += "Esta es otra linea de texto.\n";
        texto += "Aca usamos un\ttabulador en el texto.\n";
        texto += "Este texto es \"entre comillas\"";
        Console.Write(texto);
        return 0;
    }
}
Anuncios

Este es un codigo simple donde crearemos una variable de tipo string llamada texto a la cual le agregaremos distintos textos y en este caso usaremos algunos caracteres de escape para ver como se modifica en el texto final, para este caso usamos a:

  • \n
  • \t
  • \”

Compilemos y probemos ver como funciona nuestro codigo:

C:\Users\tinchicus\Documents\Visual Studio 2019>Cadena
Esto es un texto de prueba.
Esta es otra linea de texto.
Aca usamos un   tabulador en el texto.
Este texto es "entre comillas"
C:\Users\tinchicus\Documents\Visual Studio 2019>
Anuncios
Anuncios

Este es un ejemplo simple de como usar a string para generar un texto, el operador que usamos fue para lograr el efecto de un solo texto porque al valor que existia antes le agregamos el nuevo texto, antes de pasar a nuestro siguiente ejemplo vamos a ver algunos de los metodos disponibles:

  • Substring, extrae una parte del texto que le pasemos
  • ToLower, cambia la cadena a minusculas
  • ToUpper, cambia la cadena a mayusculas
  • Trim, remueve un caracter informado al principio y final de la cadena
  • Split, devuelve un array de string
  • Join, concatena un array de string con un caracter especificado
  • IsNullOrEmpty, chequea si la cadena es nula o esta vacia
  • Replace, reemplaza un valor por otro en una cadena
  • Remove, quita el valor informado de la cadena
  • Concat, nos permite concatenar cadenas
  • ToCharArray, convierte la cadena a un arreglo de char
  • ToString, convierte una instancia en un string
Anuncios

Estos son algunos de los metodos mas usuales que tendremos a nuestra disposicion, para ver como son sus efectos vamos a modificar el codigo anterior de la siguiente manera:

using System;

public class Program
{
    public static int Main()
    {
        string texto;
	string[] t;
	texto = "Esto es un texto de prueba.\n";
        texto += "Esta es otra linea de texto.\n";
        texto += "Aca usamos un\ttabulador en el texto.\n";
        texto += "Este texto es \"entre comillas\"";
        Console.WriteLine(texto);
	t = texto.Split(' ');
	Console.WriteLine("\nTexto \"Spliteado\"\n");
	foreach(string palabra in t)
	{
		Console.WriteLine(palabra);
	}
	Console.WriteLine("\nTexto \"Joineado\"\n");
	Console.WriteLine(String.Join("_",t));
	Console.WriteLine("\nTexto \"Replaceado\"\n");
	Console.WriteLine(texto.Replace(' ','$'));
	Console.WriteLine("\nTexto \"Substringueado\"\n");
	Console.WriteLine(texto.Substring(21,30));
        return 0;
    }
}
Anuncios

En esta modificacion vamos a comentar bloque por las modificaciones que hicimos, la primera fue que agregamos un array de tipo string llamada t, luego tendremos el siguiente bloque nuevo:

	t = texto.Split(' ');
	Console.WriteLine("\nTexto \"Spliteado\"\n");
	foreach(string palabra in t)
	{
		Console.WriteLine(palabra);
	}
Anuncios

Nuestra primer linea sera asignar el resultado obtenido de Split al array t, luego usaremos un Console.WriteLine para indicar que mostrara al texto que generamos con Split, como este metodo en realidad lo que hace es generar un array de tipo string en base al caracter que le dijimos con cual debe dividir, despues tendremos un bucle de foreach (bucle que pasa por todos los elementos del array) donde escribiremos cada uno de los valores de palabra, cuando veamos la salida nos daremos cuenta de esto, analicemos el siguiente bloque:

Nota: Mas adelante explicaremos bien a fondo tanto Array como foreach.
	Console.WriteLine("\nTexto \"Joineado\"\n");
	Console.WriteLine(String.Join("_",t));
Anuncios

En este caso mostraremos un texto para notificar que va a hacer el programa, despues mostraremos el resultado de usar un Join para volver a unir el contenido de nuestro array t con el guion bajo, nuevamente crearemos una salida donde veremos el resultado, nuestro siguiente bloque sera:

	Console.WriteLine("\nTexto \"Replaceado\"\n");
	Console.WriteLine(texto.Replace(' ','$'));
Anuncios

De vuelta mostraremos que estamos haciendo, luego por medio de Replace reemplazaremos todo los espacios en blanco de texto por el simbolo de pesos ($), y lo mostraremos en pantalla, veamos el ultimo bloque:

	Console.WriteLine("\nTexto \"Substringueado\"\n");
	Console.WriteLine(texto.Substring(21,30));
Anuncios

En este caso usaremos a Substring para extraer una parte del texto, Substring permite obtener una porcion del texto entre las posiciones que le informamemos, para este caso dijimos que lo haga entre la posicion 21 y la 30, con todo esto explicado compilemos y veamos su salida:

C:\Users\tinchicus\Documents\Visual Studio 2019>cadena
Esto es un texto de prueba.
Esta es otra linea de texto.
Aca usamos un   tabulador en el texto.
Este texto es "entre comillas"

Texto "Spliteado"

Esto
es
un
texto
de
prueba.
Esta
es
otra
linea
de
texto.
Aca
usamos
un      tabulador
en
el
texto.
Este
texto
es
"entre
comillas"

Texto "Joineado"

Esto_es_un_texto_de_prueba.
Esta_es_otra_linea_de_texto.
Aca_usamos_un   tabulador_en_el_texto.
Este_texto_es_"entre_comillas"

Texto "Replaceado"

Esto$es$un$texto$de$prueba.
Esta$es$otra$linea$de$texto.
Aca$usamos$un   tabulador$en$el$texto.
Este$texto$es$"entre$comillas"

Texto "Substringueado"

rueba.
Esta es otra linea de t

C:\Users\tinchicus\Documents\Visual Studio 2019>
Anuncios
Anuncios

En esta salida primero vemos a todos los valores que ahora contiene el array t, esto gracias a que Split lo separo para nosotros en base al caracter que pasamos, en este caso el espacio, vean como omitio al tabulador porque es mas de un espacio, nuestra siguiente parte es el volver a unir este array y como le informamos el guion bajo lo hizo perfectamente, para luego usar el metodo Replace donde le dijimos que reemplace los espacios por otro caracter pero tambien los podemos usar con otros caracteres, por ultimo vemos como pudimos extraer una parte del texto y como incluyo al caracter de escape, manteniendo el salto de la linea, con esto hemos cubierto la clase String, un detalle si bien trabajamos siempre sobre texto en ningun momento se modifico el texto original, ya que lo trabajamos varias veces, esto es debido a la inmutabilidad como mencionamos en este post.

Anuncios

En resumen, hoy hemos visto como es la clase String, algunos caracteres de escape, para que se usan y como nos pueden ayudar a formatear un texto, tambien algunos de los metodos disponibles, o por lo menos de los que mas usaremos, vimos un ejemplo donde pusimos en practica primero a los caracteres de escape y luego lo modificamos para ver como trabajan algunos metodos de los que comentamos anteriormente, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.

Tambien podes donar

Es para mantenimiento del sitio, gracias!

$1.00