Retrait d'attaque et de fuite des espaces à partir d'une chaîne

Comment faire pour supprimer les espaces à partir d'un objet de type string en C++.

Par exemple, comment faire pour supprimer attaque et de fuite des espaces ci-dessous l'objet de type string.

//Original string: "         This is a sample string                    "
//Desired string: "This is a sample string"

La classe string, autant que je sache, ne fournit pas de méthode de suppression d'attaque et de fuite des espaces.

Pour ajouter au problème, comment étendre cette mise en forme pour traiter des espaces entre les mots de la chaîne. Par exemple,

//Original string: "          This       is         a sample   string    " 
//Desired string:  "This is a sample string"  

À l'aide de la chaîne de méthodes mentionnées dans la solution, je pense, de faire ces opérations en deux étapes.

  1. Supprimer et espaces.
  2. Utilisation find_first_of, find_last_of, find_first_not_of, find_last_not_of et substr, à plusieurs reprises dans les limites de mot pour obtenir la mise en forme souhaitée.
InformationsquelleAutor Ankur | 2009-11-25