Ejercicio: uso de los métodos Remove() y Replace()
- 8 minutos
En este ejercicio, quitará los caracteres de una cadena mediante el Remove() método y reemplazará los caracteres mediante el Replace() método .
A veces, debe modificar el contenido de una cadena, quitar o reemplazar caracteres. Aunque se podrían reemplazar caracteres con las herramientas que ya conoce, requiere un poco de almacenamiento temporal y después habría que volver a unir las cadenas. Afortunadamente, el string tipo de datos tiene otros métodos Remove() integrados y Replace(), para estos escenarios especializados.
Uso del Remove() método
Normalmente, se usa Remove() cuando hay una posición estándar y coherente de los caracteres que desea quitar de la cadena.
Este ejercicio tiene datos almacenados en archivos más antiguos que tienen una longitud fija y con posiciones de caracteres asignadas para determinados campos de información. Los cinco primeros dígitos representan un número de identificación del cliente. Los 20 dígitos siguientes contienen el nombre de un cliente. Las seis posiciones siguientes representan el importe de la factura más reciente del cliente y las tres últimas posiciones representan el número de artículos ordenados en esa factura.
En los pasos siguientes, debe quitar el nombre del cliente para dar formato a los datos para que se pueda enviar a un proceso independiente. Puesto que conoce la posición exacta y la longitud del nombre del usuario, puede quitarla fácilmente mediante el Remove() método .
Quitar caracteres en ubicaciones específicas de una cadena
Elimine o use el operador de comentario de línea
//para comentar todo el código de los pasos anteriores.Actualice el código en el editor de Visual Studio Code de la siguiente manera:
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);En el menú Archivo de Visual Studio Code, seleccione Guardar.
El archivo Program.cs debe guardarse antes de compilar o ejecutar el código.
En el panel EXPLORER, para abrir un terminal en la ubicación de la carpeta TestProject, haga clic con el botón derecho en TestProject y, a continuación, seleccione Abrir en terminal integrado.
Debe abrirse un panel de terminal y debe incluir un símbolo del sistema que muestre que el terminal está abierto en la ubicación de la carpeta TestProject.
En el símbolo del sistema del terminal, para ejecutar el código, escriba dotnet run y presione Entrar.
Deberías ver la siguiente salida:
123455000 3El
Remove()método funciona de forma similar alSubstring()método . Proporcione una posición inicial y la longitud para quitar esos caracteres de la cadena.
Uso del Replace() método
El Replace() método se usa cuando es necesario reemplazar uno o varios caracteres por un carácter diferente (o ningún carácter). El Replace() método es diferente de los otros métodos usados hasta ahora, reemplaza todas las instancias de los caracteres especificados, no solo la primera o la última instancia.
Quitar caracteres independientemente de dónde aparezcan en una cadena
Actualice el código en el editor de Visual Studio Code de la siguiente manera:
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);Guarde el archivo de código y use Visual Studio Code para ejecutar el código.
Deberías ver la siguiente salida:
This is example dataAquí ha usado el
Replace()método dos veces. La primera vez que sustituyó la cadena--por un espacio. La segunda vez que reemplazaste la cadena-por una cadena vacía, lo cual elimina completamente el carácter de la cadena.
Resumen
Hay dos aspectos importantes que se deben tener en cuenta:
- El
Remove()método funciona como elSubstring()método , salvo que elimina los caracteres especificados en la cadena. - El
Replace()método intercambia todas las instancias de una cadena con una nueva cadena.