Mam stringa i potrzebuje w nim zamienić wszystkie litery "a" na "^". Jak to zrobić?
Próbowałem
string.replace(poczateklancucha,konieclancucha,"a","^");
coś nie działa za bardzo...
Mam stringa i potrzebuje w nim zamienić wszystkie litery "a" na "^". Jak to zrobić?
Próbowałem
string.replace(poczateklancucha,konieclancucha,"a","^");
coś nie działa za bardzo...
http://www.cplusplus.com/reference/string/string/replace/ moze to Ci pomoze.
Ewentualnie przeiteruj po stringu "recznie" i zamien znaki ;)
Funkcja replace służy do trochę czegoś innego. Tutaj najprościej będzie jednak użyć pętli, jak pisze [losowa nazwa]. Ewentualnie skorzystać z funkcji transform, ale to by było trudniejsze;)
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
string st;
cout<<"podaj string ";
getline(cin,st);
for(int i=0;i<st.length();i++)
if(st[i]=='a')st[i]='^';
cout<<st;
getch();
return 0;
}
kortyg - działa, teraz:
Mam do przesłania dane GET'em i muszę spację zamienić na %20.
Ale zamienia mi tylko na 0 zamiast %20.
Bo wtedy to już jest inna bajka, musisz podmienić znaki na stringi :)
string url_encode(string &str) {
string out;
for(int i=0;i<str.length();i++)
if(str[i]==' ') out += "%20" else out.append(str[i]);
return out;
}
Dzięki wielkie. Można zamknąć temat.