Strumenti Utente

Strumenti Sito


programmazione:cpp:funzione_split_string

Una funzione per creare un vettore di stringhe da una stringa e un delimitatore

Autore: Fabio Di Matteo
Ultima revisione: 24/10/2025 17:29

#include <iostream>
#include <vector>
...
std::vector<std::string> split(std::string s, char d, int max=0)
{
     std::string e;
     std::vector<std::string> list;
     int token=0;
 
     for (std::string::size_type i = 0; i<s.size(); ++i)
     {
            if (s[i]==d)
            {
              list.push_back(e);
              e.clear();
              token++ ;
 
            }else{
                e.push_back(s[i]);
            }
            if (max!=0 && token==max) break;
     }
     if(max==0) list.push_back(e); 
     return list;
}

utilizzo:

std::string s="Una bella giornata";
std::vector<std::string> list;
list=split(s,' ');

restituisce:

["Una","bella", "giornata"]
programmazione/cpp/funzione_split_string.txt · Ultima modifica: 24/10/2025 21:57 da Fabio Di Matteo