Prelevare dati stringa

di Anonimizzato19271 il
4 risposte
Ciao a tutti ragazzi, ho una stringa del tipo: s1 -> [s2 s3] , potrebbe essere anche con piu elementi all'interno delle parentesi e devo memorizzare in una lista o un array s2 ed s3, come faccio a splittare la stringa e ignorare i caratteri -> [ ] per prendere solo gli elementi che mi interessano?

grazie delle risposte

4 Risposte

  • A mano o mediante espressioni regolari
  • Potresti per favore essere un poco piu specifico?

    grazie dell'aiuto
  • A parte l'uso delle "espressioni regolari" per cui non c'è molto altro da dire, puoi suddividere inizialmente la stringa basandoti sugli spazi (tokenizzazione). In questo modo avrai gli elementi che ti servono, ovviamente escludendo i caratteri [ e ] dove compaiono.

    Per la tokenizzazione, su google ci sono tanti esempi.
  • Grazie oregon, cerco su internet e poi ti dico

    ho provato cosi:
    
    
    getline(cin,line);
    
    			size_t ll=line.find('[');
    
    			istringstream rl(line.substr(ll+1));
    			rl>>nom;
    
    
    
    pero cosi mi prende solo quelli che ci sono dentro le parentesi, siccome non so quanti elementi ci posso essere dentro le parentesi mi serve un codice che independentemente di quanti elementi ci sono dentro le parentesi me li prende tutti. con il substr solo mi prende quelli in determinate posizioni che li dico io
Devi accedere o registrarti per scrivere nel forum
4 risposte