#include <iostream.h>
#include <string.h>
using namespace std;
string str;
int main()
{
int i=0;
cin>>str;
i = str.find('з');
str.replace(i,1,"z");
cout<<str;
return 0;
}
replace
Нужно все символы "з" в строке str заменить на "z".
Код:
Далее вводил
Цитата:
здорово
На что был ответ
Цитата:
zдорово
Тогда я попробывал
Код:
#include <iostream.h>
#include <string.h>
using namespace std;
string str;
int main()
{
int i=0;
cin>>str;
i = str.find('з');
str.replace(i-1,1,"z");
cout<<str;
return 0;
}
#include <string.h>
using namespace std;
string str;
int main()
{
int i=0;
cin>>str;
i = str.find('з');
str.replace(i-1,1,"z");
cout<<str;
return 0;
}
Получалось
Цитата:
z дорово
[SIZE="3"]Как избавится от пробела???[/SIZE]
P.S. Не все буквы заменять будет - нужен цикл. Попробуй ввести 'зараза'
Код:
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
void main (void)
{
string str;
cin>>str;
basic_string <char>::size_type i;
while((i=str.find("з"))!=string::npos)
str.replace(i,1,"z");
cout<<str;
_getch();
}
#include <string>
#include <conio.h>
using namespace std;
void main (void)
{
string str;
cin>>str;
basic_string <char>::size_type i;
while((i=str.find("з"))!=string::npos)
str.replace(i,1,"z");
cout<<str;
_getch();
}
Код:
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
void main (void)
{
string str;
cin>>str;
basic_string <char>::size_type i;
while((i=str.find("з"))!=string::npos)
str.replace(i,1,"z");
cout<<str;
_getch();
}
#include <string>
#include <conio.h>
using namespace std;
void main (void)
{
string str;
cin>>str;
basic_string <char>::size_type i;
while((i=str.find("з"))!=string::npos)
str.replace(i,1,"z");
cout<<str;
_getch();
}
Исходные даные:
Цитата:
здорово
Результат:
Цитата:
здорово
P.S.Компилятор Dev-C++
P.S. Не все буквы заменять будет - нужен цикл. Попробуй ввести 'зараза'[/QUOTE]
В сообщении не видно, но там перед zдоровя появляется пробел!
Я тестировал на замене английских символов, русские не воспринимались. Но увидев что у тебя в примере русские символы были найдены, подумал, что у тебя компилятор позволяет.
Так почему же я пишу на С++?
Да чуть не забыл всем большое спасибо!
Чем не подходит replace ?
Код:
#include<iostream>
#include<string>
using namespace std;
void main(){
string str = "nu C++ i zaraza..";
replace(str.begin(),str.end(), 'z' , 'Z');
cout<<str;
cin.get(); // press enter
}
#include<string>
using namespace std;
void main(){
string str = "nu C++ i zaraza..";
replace(str.begin(),str.end(), 'z' , 'Z');
cout<<str;
cin.get(); // press enter
}
а если проблемы с русскими буквами то imho это не раз обсуждалось и стоит юзать поиск
Чем не подходит basic_string::replace ?[/QUOTE]
Возможно...:rolleyes:
Код:
#include<iostream>
#include<string>
using namespace std;
void main(){
string str = "nu C++ i zaraza..";
replace(str.begin(),str.end(), 'z' , 'Z');
cout<<str;
cin.get(); // press enter
}
#include<string>
using namespace std;
void main(){
string str = "nu C++ i zaraza..";
replace(str.begin(),str.end(), 'z' , 'Z');
cout<<str;
cin.get(); // press enter
}
а если проблемы с русскими буквами то imho это не раз обсуждалось и стоит юзать поиск[/QUOTE]
[SIZE="5"]Большое спасибо!!![/SIZE]
Иду переписывать програму на С++...