Esercizio - Usare i metodi Remove () e Replace ()
- 8 minuti
In questo esercizio si rimuovono caratteri da una stringa usando il Remove() metodo e si sostituiscono i caratteri usando il Replace() metodo .
In alcuni casi, è necessario modificare il contenuto di una stringa, rimuovendo o sostituendo caratteri. Anche se è possibile sostituire i caratteri con gli strumenti già noti, richiede di memorizzare temporaneamente e ricomporre le stringhe. Fortunatamente, il string tipo di dati include altri metodi Remove() predefiniti e Replace(), per questi scenari specializzati.
Usare il Remove() metodo
In genere si usa Remove() quando è presente una posizione standard e coerente dei caratteri da rimuovere dalla stringa.
Questo esercizio contiene dati archiviati in file meno recenti con lunghezza fissa e con posizioni di caratteri allocate per determinati campi di informazioni. Le prime cinque cifre rappresentano un numero di identificazione del cliente. Le 20 cifre successive contengono il nome di un cliente. Le sei posizioni successive rappresentano l'importo della fattura più recente del cliente e le ultime tre posizioni rappresentano il numero di articoli ordinati nella fattura.
Nei passaggi seguenti è necessario rimuovere il nome del cliente per formattare i dati in modo che possa essere inviato a un processo separato. Poiché si conosce la posizione esatta e la lunghezza del nome dell'utente, è possibile rimuoverla facilmente usando il Remove() metodo .
Rimuovere caratteri in posizioni specifiche da una stringa
Eliminare o usare l'operatore di commento riga
//per impostare come commento tutto il codice degli esercizi precedenti.Aggiornare il codice nell'editor di Visual Studio Code come indicato di seguito:
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);Nel menu File di Visual Studio Code, selezionare Salva.
Il file Program.cs deve essere salvato prima di compilare o eseguire il codice.
Nel pannello ESPLORA RISORSE, per aprire un terminale nel percorso della cartella TestProject, fare clic con il pulsante destro del mouse su TestProject, quindi scegliere Apri nel terminale integrato.
Verrà aperto un pannello del terminale con un prompt dei comandi che indica che il terminale è aperto nella posizione della cartella TestProject.
Nel prompt dei comandi del terminale, digitare dotnet run per eseguire il codice, quindi premere INVIO.
Verrà visualizzato l'output seguente:
123455000 3Il
Remove()metodo funziona in modo analogo alSubstring()metodo . Si specifica una posizione iniziale e la lunghezza per rimuovere tali caratteri dalla stringa.
Usare il Replace() metodo
Il Replace() metodo viene usato quando è necessario sostituire uno o più caratteri con un carattere diverso (o nessun carattere). Il Replace() metodo è diverso dagli altri metodi usati finora, sostituisce ogni istanza dei caratteri specificati, non solo la prima o l'ultima istanza.
Rimuovere i caratteri indipendentemente dalla posizione in cui vengono visualizzati in una stringa
Aggiornare il codice nell'editor di Visual Studio Code come indicato di seguito:
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);Salvare il file di codice e quindi usare Visual Studio Code per eseguire il codice.
Verrà visualizzato l'output seguente:
This is example dataQui è stato usato il
Replace()metodo due volte. La prima volta che la stringa--è stata sostituita con uno spazio. La seconda volta che la stringa-è stata sostituita con una stringa vuota, che rimuove completamente il carattere dalla stringa.
Riepilogo
Ecco due aspetti importanti da ricordare:
- Il
Remove()metodo funziona come ilSubstring()metodo , ad eccezione del fatto che elimina i caratteri specificati nella stringa. - Il
Replace()metodo scambia tutte le istanze di una stringa con una nuova stringa.