IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Boost C++ Discussion :

[Boost Regex] Supprimer tous les commentaires d'un fichier C


Sujet :

Boost C++

  1. #1
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut [Boost Regex] Supprimer tous les commentaires d'un fichier C
    Bonsoir,

    Je débute avec Boost et je souhaiterais supprimer tous les commentaires d'un code C ainsi que tous les espaces superflus, saut de ligne et retour chariot...

    Exemple :
    int main()
    {
    std::string data = ReadFile("main.c"); // un autre com

    /*
    coucou
    ca va ?
    */

    // un commentaire
    const boost::regex e(
    "55*59");

    std::string s = boost::regex_replace(data , e, "XXX", boost::match_default | boost::format_sed);

    cout << s << endl;

    return 0;
    }
    Devient :
    int main(){std::string data=ReadFile("main.c");const boost::regex e("55*59");std::string s = boost::regex_replace(data , e, "XXX",boost::match_default | boost::format_sed);cout << s << endl;return 0;}
    Je n'ai rien trouvé d'intéressant sur le doc officielle :
    http://www.boost.org/doc/libs/1_51_0...tml/index.html

    Désolé, je suis nul en Regex

    Voilà merci à vous !

  2. #2
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 196
    Points : 17 165
    Points
    17 165
    Par défaut
    Code le avec une variante de ostream personalisée:
    Ta classe est contient une machine a état: code, space, comment, onelinecomment, preproc.

    code et space permettent de supprimer les espaces superflux.
    comment gere les /* */
    onelinecomment les //
    et preproc les commandes preprocesseurs, qui sont formaté à part.

    Plus d'information du coté des machines à états et des transducteurs.

Discussions similaires

  1. Supprimer tous les commentaires ?
    Par devbot dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 27/11/2011, 21h39
  2. [RegEx] Regex pour supprimer tous les caractères répétés
    Par deadc0de dans le forum Langage
    Réponses: 8
    Dernier message: 25/11/2009, 09h25
  3. Réponses: 2
    Dernier message: 17/06/2009, 09h25
  4. Supprimer tous les modules (d'un fichier donné)
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/06/2007, 13h20
  5. [Tomcat] Comment supprimer tous les logs ?
    Par Soulsurfer dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 11/05/2004, 17h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo