Capítulo 8. Afeitado y corte de pelo
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Soy un desastre / Desde que me cortaste / Pero el brazo de Chucky me hace compañía
They Might Be Giants, "Cyclops Rock" (2001)
Para el siguiente programa desafío, crearás una versión Rust de cut
, que extirpará texto de un archivo o STDIN
.El texto seleccionado podría ser algún rango de bytes o caracteres o podrían ser campos denotados por un delimitador como una coma o un tabulador que crea límites de campo.Aprendiste a seleccionar un rango contiguo de caracteres o bytes en el Capítulo 4, mientras trabajabas en el programa headr
, pero este desafío va más allá, ya que las selecciones pueden ser no contiguas y en cualquier orden.
Por ejemplo, la selección 3,1,5-7
debe hacer que el programa de desafío imprima el tercer, el primer y del quinto al séptimo bytes, caracteres o campos, en ese orden. El programa de desafío captará el espíritu del original, pero no tratará de ser totalmente fiel, ya que sugeriré algunos cambios que considero mejoras.
En este capítulo aprenderás a hacer lo siguiente:
-
Lee y escribe un archivo de texto delimitado utilizando la caja
csv
-
Diferencia un valor utilizando
*
-
Utiliza
Iterator::flatten
para eliminar las estructuras anidadas de los iteradores -
Utiliza
Iterator::flat_map
para combinarIterator::map
yIterator::flatten
Cómo funciona el corte
Empezaré revisando la parte de la página del ...
Get Línea de comandos Óxido now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.