Rimuovi il primo carattere dalla stringa in C ++

Rimuovi il primo carattere dalla stringa in C ++
A volte, è necessario gestire un enorme volume di dati di testo in campi come linguistica computazionale, apprendimento automatico e analisi dei dati. Quindi, in C ++, le stringhe ed elenchi sono comunemente usate per questo. Forse, dobbiamo rimuovere le apparenze iniziali di un carattere da una stringa o da un elenco di caratteri. In questo articolo, esamineremo metodi alternativi per rimuovere le prime istanze di un personaggio da una stringa in C++. La funzione rimuove il primo carattere del contenuto della stringa, risultando in una stringa più breve.

Esempio 1: rimuovere il primo carattere dalla stringa usando il metodo ERASE () in C++

La funzione String :: ERASE è il metodo consigliato per rimuovere i caratteri da una stringa in atto. Il sovraccarico dell'ambito è dimostrato nel seguente programma C ++:

Cominciamo con la funzione principale del programma. All'interno della funzione principale tra parentesi, abbiamo definito un modello di classe standard per rappresentare la variabile stringa come "strvalore". La variabile stringa "strvalue" è inizializzata con la stringa di parole. Abbiamo un'istruzione Cout standard che stamperà la stringa mentre viene inizializzata. Quindi, abbiamo eseguito il metodo di cancellazione su questa stringa, "strvalue".

All'interno del metodo di cancellazione, abbiamo superato 0 e 1 come argomento. Il valore "0" è l'indice del primo carattere nella stringa "strvalue" e il valore "1" è il primo carattere inserito nella stringa. Dopo la posizione specificata, il metodo Cancella eliminerà la lunghezza fornita del carattere dalla stringa. Alla fine, abbiamo un'istruzione di stampa per stampare la stringa dopo aver rimosso il primo carattere.

#includere
#includere
int main ()

std :: string strvalue = "happy me";
std :: cout << "String Before:" << StrValue << std::endl;
Strvalue.cancella (0, 1);
std :: cout << "String After:" << StrValue << std::endl;
restituzione 0;

Il seguente output mostra il funzionamento del metodo di cancellazione su una stringa specificata. Come puoi vedere, il carattere iniziale della stringa è stato cancellato:

Esempio 2: rimuovere il primo carattere dalla stringa usando il metodo iteratore in C++

Un'altra alternativa sovraccarica del metodo cancella () cancella l'iteratore. Accetta un iteratore come parametro e cancella il carattere da esso specificato. Bypassing the iterator puntando al primo carattere della stringa, possiamo cancellare il primo carattere della stringa.

Abbiamo usato il metodo di cancellazione nella funzione principale di questo programma seguente. Un formato standard della stringa è stato definito nella funzione principale. La variabile String viene creata come "Stringis" e inizializzata con le stringhe dei caratteri. Innanzitutto, abbiamo stampato la stringa prima di applicare il metodo Cancella iteratore.

Quindi, abbiamo invocato il metodo di cancellazione della stringa precedente. Il metodo di cancellazione ha l'iteratore iniziale per la stringa "strvalue" e viene utilizzato per restituire un iteratore che indica il primo carattere della stringa. Quando viene restituito il primo carattere, il metodo Cancella rimuoverà il carattere dalla stringa. Successivamente, la stringa verrà stampata, facendo rimuovere il primo carattere.

#includere
#includere
int main ()

std :: string stringis = "Esempio di programmazione";
std :: cout << "String Before: " << StringIs << std::endl;
Stringis.Cancella (Stringis.inizio());
std :: cout << "String After: " << StringIs << std::endl;
restituzione 0;

La shell ha visualizzato l'uscita, che mostra la stringa prima del metodo dell'iteratore Cancella e dopo il primo carattere viene rimosso dalla stringa.

Esempio 3: controllare la stringa vuota per rimuovere il primo carattere dalla stringa in C++

Prima di utilizzare la funzione String :: ERASE, assicurati che non ci sia una stringa vuota. Se la sequenza di input è vuota, il programma lancia un'eccezione di errore Std :: Lunghezza.

Il programma include la funzione principale in cui viene dichiarata la variabile stringa "mystr". La stringa viene anche inizializzata con i caratteri della stringa quando viene dichiarata. Il valore della stringa verrà stampato sulla shell. Successivamente, abbiamo un'istruzione if in cui la condizione viene applicata sulla stringa data.

Abbiamo chiamato il metodo vuoto all'interno della condizione if per verificare che la stringa non sia vuota. Quindi, il metodo Cancella iteratore viene utilizzato sulla stringa e rimuove il primo carattere dalla stringa specificata. La stringa verrà stampata sullo schermo con shell con il primo carattere rimosso dalla stringa.

#includere
#includere
int main ()

std :: string mystr = "arcobaleno";
std :: cout << "String Before:" << MyStr << std::endl;
Se (!Mystr.vuoto())
Mystr.Cancella (Mystr.inizio());

std :: cout << "String Now:" << MyStr << std::endl;
restituzione 0;

Abbiamo le seguenti stringhe di uscita.

Esempio 4: rimuovere il primo carattere con il carattere corrispondente in C++

Ora, abbiamo un esempio per rimuovere il carattere iniziale se corrisponde a un carattere specifico, usando la seguente sintassi:

La variabile stringa viene inizializzata con il valore stringa e assegnata un nome "nome" nel principale programma principale. Abbiamo visualizzato la stringa con il comando cout. Quindi, abbiamo definito un'altra variabile, "CH", con il tipo di dati Char. Alla variabile char "ch" viene assegnato a un carattere "k" abbinato al primo carattere della stringa precedente.

Quindi, l'istruzione IF viene utilizzata per verificare la condizione che il valore del carattere "k" abbina con il primo valore di carattere della stringa. Abbiamo la funzione front (), che viene utilizzata per ottenere il primo carattere nel riferimento della stringa. Il carattere iniziale della stringa verrà quindi eliminato usando l'iteratore di cancellazione.

#includere
#includere
int main ()

std :: string name = "kalsoom";
std :: cout << "Name Before: " << Name << std::endl;
char ch = 'k';
if (nome.front () == ch)
Nome.Cancella (nome.inizio());

std :: cout << "Name Now: " << Name << std::endl;
restituzione 0;

Come puoi vedere, il primo carattere rimosso dalla stringa è il seguente:

Esempio 5: rimuovere il primo carattere dalla stringa usando il metodo substr () in c++

La stringa viene modificata utilizzando il metodo String :: ERASE in atto. Utilizzando la funzione String :: substr, è possibile recuperare un duplicato della stringa senza l'ultimo carattere.

Abbiamo usato la funzione substr sulla stringa "mystring" nel blocco condizione if. La funzione substr è passata con la prima posizione del carattere e la lunghezza della stringa a -1. Restituisce una stringa appena formata dall'oggetto stringa chiamante che contiene i caratteri specificati.

#includere
#includere
int main ()

Std :: String mystring = "Bringing";
std :: cout << "Original String: "<< MyString << std::endl;
std :: string n;
Se (!Mystring.vuoto())
n = mystring.substr (1, mystring.size () - 1);

std :: cout << "Changed String: " << n << std::endl;
restituzione 0;

Il metodo substr ha rimosso la prima occorrenza del carattere dalla stringa, come mostrato nella seguente shell:

Conclusione

In C ++, abbiamo imparato i metodi alternativi per rimuovere il carattere iniziale da una stringa. Questi metodi restituiscono lo stesso output ma implementano in modo diverso nei programmi C ++. Questi sono metodi C ++ efficienti per eliminare le istanze iniziali di un carattere da una stringa. Speriamo che questi metodi siano vantaggiosi per te.