Come sostituire la stringa in Arduino

Come sostituire la stringa in Arduino
Le stringhe sono ampiamente utilizzate nella programmazione per archiviare i dati al loro interno poiché i dati possono essere memorizzati con qualsiasi numero di caratteri. Le stringhe svolgono un ruolo vitale durante la programmazione della scheda Arduino in quanto vengono utilizzate per archiviare o visualizzare il testo sulla schermata di visualizzazione LCD o ottenere l'input dall'utente utilizzando la tastiera connessa ad Arduino. Qui vedremo come possiamo sostituire una stringa con un'altra per ottimizzare il programma.

Sostituisci () funzione

Nella programmazione Arduino Sostituzione () sostituisce tutte le istanze di una determinata stringa con un'altra stringa indicata nel secondo parametro della funzione. Ti consente inoltre di sostituire una sottostringa con qualsiasi altra stringa invece di sostituirla con un'intera stringa.

La cosa importante da notare qui è che non restituisce una nuova stringa che contiene modifiche, invece sostituisce la sottostringa o il carattere nella stringa originale.

Sintassi

Test_str.sostituire (str_1, str_2);

La sottostringa STR1_2 sostituirà la sottostringa STR_1 all'interno del test_str. Ricordare Stringa str_1 deve essere presente nella nostra stringa di test principale altrimenti la funzione fallirà.

Parametri

Di seguito sono riportati i parametri che questa funzione prende:

  • Test_str: Una variabile di tipo stringa.
  • Str_1: Una prima variabile di sottostringa con stringa di tipo.
  • Str_2: Una seconda variabile di sottostringa con stringa di tipo.

ritorna

Non restituisce nulla, passa solo valore da una variabile all'altra.

Codice di esempio

Ora prenderemo un codice di esempio in cui vengono inizializzate tre stringhe. Sostituiremo il test_str con una nuova sottostringa.

void setup ()
Seriale.Inizia (115200); /*Tasso di baud per comunicazione seriale*/
String Str_1 = "Arduino"; /*String 1 definito*/
String str_2 = "Raspberry Pi"; /*String 2 definito*/
Stringa test_str = "linuxhint.Com/arduino ";/*stringa di prova la cui sottostringa sarà sostituita*/
Seriale.print ("test_str prima:" "\ t");
Seriale.println (test_str); /*Test String prima*/
Test_str.sostituire (str_1, str_2); /*Sostituisci funzione*/
Seriale.print ("test_str dopo:" "\ t");
Seriale.println (test_str); /*Test String dopo*/

void loop ()

Nel codice sopra prima abbiamo iniziato definendo il tasso di baud per vedere i risultati sul monitor seriale. Prossime due corde "Arduino" E "Raspberry Pi" sono inizializzati. Una nuova sottostringa sostituirà la sottostringa all'interno del Test_STR principale.

Successivamente utilizzando la funzione Sostituzione () Str_2 verrà sostituito con tutti i caratteri pari alla sottostringa Str_1 all'interno del nostro Test_STR principale. Infine, usando il seriale.Il risultato della funzione print () è stampato sul monitor seriale.

Produzione

L'output mostra test_str prima e dopo una sottostringa è stata sostituita.

Sostituire i caratteri in una stringa in Arduino

Nell'esempio sopra abbiamo sostituito una sottostringa completa con una nuova. Ora sostituiremo tutte le istanze di caratteri all'interno della nostra stringa di test con nuovi caratteri. Facciamo un esempio.

Codice di esempio

Qui abbiamo preso una stringa i cui personaggi verranno sostituiti con uno nuovo.

void setup ()
Seriale.Inizia (115200); /*Inizia la comunicazione seriale*/
Seriale.print ("stringa originale:" "\ t" "\ t");
String str_1 = "Arduino Linuxhint.Com "; /*String str_1 definito* /
Seriale.println (str_1);
Str_1.sostituire ('u', '1'); /*String Char sostituito*/
Seriale.print ("char u sostituito con 1:" "\ t");
Seriale.println (str_1);
Str_1 = "Arduino Linuxhint.Com "; /*String str_1 definito di nuovo* /
Str_1.sostituire(".Com "," 0000 "); /*.Com sostituito con 4 zeri*/
Seriale.stampa(".Com sostituito con 0000: "" \ t ");
Seriale.println (str_1);
Str_1 = "Arduino Linuxhint.Com "; /*string S2 definito di nuovo* /
Str_1.sostituire(".Com ",".Www "); /*.Com sostituito con .Www*/
Seriale.stampa(".Com sostituito con .Www: "" \ t ");
Seriale.println (str_1);

void loop ()

Il codice sopra è simile a lavorare come abbiamo spiegato in precedenza. Una stringa di prova viene inizializzata e i suoi caratteri vengono sostituiti con alcuni numeri e caratteri. Nella prima parte tutti i caratteri pari a "u" sono sostituiti con il numero 1. Successivamente tutti i personaggi all'interno .Com sono sostituiti con 0000. Infine abbiamo sostituito .Com con .Www. Tutti e tre i risultati sono stampati sul monitor seriale.

Nota: Una volta che utilizziamo la funzione Sostituisci (), sostituirà tutte le istanze di un carattere specifico all'interno dell'intera stringa.

Produzione

La stringa di prova viene stampata su monitor seriale dopo tre diversi caratteri sostituiti con nuovi substrings.

Conclusione

Questo articolo riassume diversi modi per sostituire un carattere o una sottostringa specifica all'interno di una stringa. Usando la funzione Arduino Sostituzione () Una qualsiasi delle stringhe può essere sostituita con una nuova e può essere stampata su monitor seriale e in display come LCD e OLED.