remplacement d'une sous chaine par une autre sous chaine C++
bonjour,
Je veux faire un remplacement d'une sous chaine par une autre souschaine à plusieurs emplacements.
voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #include <iostream>
#include <string>
using namespace std;
int main(void)
{
string s = "abcerfg";
s.replace(3, 2, "HHHHHHH");
s.replace(5,1,"AAAAA");
cout << s << endl;
return 0;
} |
ici je veux remplacer "er" par "HHHHHHH".
et je veux remplacer "f" par "AAAAA"
pour avoir un resultat "abHHHHHHHrAAAAAg"
mais voici le resultat par le prog: "abcHHAAAAHHHHHfg"
est-ce que vous avez une solution?
merci
voici le problème généralement
j'ai un alignement de deux séquences et voici le fichier de sortie.
3 2881 ATTTAAGTGCCTGGGCCCCTTTGGAACCGTTTAAACCGTTGTGTGGTGTTGAAATTTTTT
8547 10456 CTTGCTTAACCGTTGGCCCGGGGGGGGGAAACGTGTGTGTGTAAAACCCCCCCTGGGAAAAA
4498 6926 GTGGGTTCCCAAAACGTTGGGCCACACACACACAGGGGGGGGGGTTTGGGGGGCCCCACCC
6853 7847 ACGTTGGGCCACACACACACAGGGGGGGGGGTTTCTCGGGAAAAAAACCCCTTTTTTTTTTTTTTTTT
3678 4567 ......
2895 3684 ..........
2314 3242 ........
500 1503 ..........
la première et la deuxième colonne c'est la position du début et de fin d'alignement dans la séquence SEQ.
et la troisième colonne c'est la partie de l'alignement d'une séquence C avec SEQ.
Je veux faire une modification à partir de la position debut jusqu'à la fin de la séquence SEQ en mettant la séquence de la troisième colonne.
c'est à dire dans la position de 3 à 2881 je mettre "ATTTAAGTGCCTGGGCCCCTTTGGAACCGTTTAAACCGTTGTGTGGTGTTGAAATTTTTT". (par exemple)
est-ce que vous avez une solution?
Merci