Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
  Derniers articles
  • Tutoriel du processeur Cell 
  • Comment exécuter un fichier Cpp 
  • Comment faire de réseaux parallèle…
  • Comment surcharger l'opérateur d'af…
  • C + + Fibonacci Numéro Fonction 
  • Comment utiliser des pointeurs de fo…
  • Comment trouver un maximum dans le t…
  • C Fonction Types de retour 
  • Comment lire un fichier CSV en C 
  • Comment inverser une liste unique Li…
  •   C /C + + Programming
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    C /C + + Programming

    Comment remplacer un texte arbitraire à cordes en C + +

    La bibliothèque C + + chaîne dispose de plusieurs fonctions utiles pour la manipulation des chaînes , mais aucune recherche générale et remplacer . Bien qu'il y ait beaucoup d'informations sur des algorithmes optimisés pour la mise en œuvre remplacement de texte arbitraire , de nombreux algorithmes impliquent des structures de données complexes et difficiles à suivre les techniques telles que l'arithmétique des pointeurs . Pour la plupart des programmes , de recherche et de remplacement n'est pas un goulot d'étranglement de performance , il est donc plus judicieux d'utiliser un algorithme simple, facilement compréhensible. Ceci est possible en profitant de quelques-unes des fonctions de chaînes existantes pour gérer la manipulation de bas niveau. Instructions
    1

    Ecrire le contour de votre fonction de remplacement de la chaîne :

    replaceSubstring de chaîne ( string source , string match , chaîne replace ) {string out = ""; retourneront ; }
    2

    Ajouter une boucle qui trouve tous les matches de chaîne dans la chaîne . Les lastpos variable sera utile lorsque vous commencez à ajouter du code pour construire la nouvelle chaîne :

    size_t pos = 0; //Démarrer la recherche au premier lastpos charactersize_t = 0 ; while (( pos = source.find ( ! match pos) ) = string :: OSBL) //boucle jusqu'à ce que aucune correspondance n'est trouvée {pos = pos + match.lengh (); //Démarrer la recherche pour le prochain match à la fin de cette matchlastpos = pos ;}
    3

    construire la chaîne de production que des correspondances sont trouvées :

    size_t pos = 0; //Démarrer la recherche au premier lastpos charactersize_t = 0 ; while (( pos = source.find (correspondance , pos) ) = string :: OSBL) //boucle jusqu'à ce que aucune correspondance n'est trouvée { sortie + = source.substr ( lastpos , pos - lastpos ) ; ! //Ajouter tous les caractères qui ont été ignorés overoutput + = remplacer ; pos = pos + match.lengh (); //Démarrer la recherche pour le prochain match à la fin de cette matchlastpos = pos ;} sortie + = source.substr ( lastpos ) ; //Ajouter le reste de la chaîne source Photos

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment faire un jeu de base en C + + 
  • Comment coder un économiseur d'écran 
  • Comment utiliser OracleDataAdapter mettre à jour une source de données 
  • Comment réparer un dépassement de mémoire tampon 
  • Comment faire Allocation dynamique de mémoire en C 
  • Comment fermer WCF Services 
  • Comment compiler un CPP avec un fichier d'en-tête 
  • Comment faire pour convertir une chaîne C + + pour LStrHandle 
  • Comment faire pour intégrer Python Dans Visual C 2008 
  • Comment construire une application mobile qui utilise une caméra 
  • Connaissances Informatiques © http://www.ordinateur.cc