Поиск:

Ответ в темуСоздание новой темы Создание опроса
> в String найти нужный символ и заменть, строки 
V
    Опции темы
КУБ
Дата 22.6.2006, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Вобщем мне нежно наприме в строке 
Код

String str;

найти сммвол "," и заменть его на "."
Друзья подскжите как это сделать?  smile

Добавлено @ 15:11 
Вобщем нужно нати запятую и заменить её на точку  smile  
PM MAIL   Вверх
_hunter
Дата 22.6.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



это что за класс такой? в любом случае ищи методы типа Pos/Find/Replace 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
КУБ
Дата 22.6.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Это класс String из библиотеки VCL  smile

Добавлено @ 16:27 
так в книжке написано

Добавлено @ 16:34 
_hunter  я нашёл запятую так 
Код

Buf.Pos(",");


А заменить на точку  "." какой командой надо?  smile  
PM MAIL   Вверх
Rockie
Дата 22.6.2006, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: нет
Всего: 31



а вроде массив он и в Африке массив. грубой силой =)
Код
#include<conio>
#include<iostream>
#include<string>

using namespace std;

void main(){
string str = "Hi Vasya. Pupkin..";

int lenght = str.length();
for(int i=0;i<lenght;i++)
 if(str[i]=='.') str[i]=',';

cout<<str;

getch();
}
 


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
КУБ
Дата 22.6.2006, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Я там неправильно написал. надо не Buf а 
Код

str.Pos(","); 



И какой комнндой заменить запятую на точку?  smile  
PM MAIL   Вверх
MAKCim
Дата 22.6.2006, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: нет
Всего: 207



Код

string str;
...
    string::iterator i;
    if ((i=find(str.begin(),str.end(),','))!=str.end())
        *i='.';
...
 


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
КУБ
Дата 22.6.2006, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Получилось всё . Спасибо друзья   smile  
PM MAIL   Вверх
_hunter
Дата 22.6.2006, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



в VCL AnsiString.
+ чего сюда постил?
++ там езе метод Replace есть... 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
Rockie
Дата 22.6.2006, 18:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: нет
Всего: 31



Код
#include<conio>
#include<iostream>
#include<string>

using namespace std;

void main(){
string str = "text. text..";

replace(str.begin(),str.end(), '.' , ',');

cout<<str;

getch();
}
 


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
КУБ
Дата 22.6.2006, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Цитата(_hunter @  22.6.2006,  17:35 Найти цитируемый пост)
++ там езе метод Replace есть...  


Нет метода  Replace!!

Добавлено @ 18:54 
Может както подругому  в VCL AnsiString называется такойже метод.  
PM MAIL   Вверх
Rockie
Дата 22.6.2006, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: нет
Всего: 31



Цитата(КУБ @  22.6.2006,  18:52 Найти цитируемый пост)
Нет метода  Replace!! 

а выше я пример чего привел? 


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
КУБ
Дата 22.6.2006, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 5.6.2006
Где: Украина, Донецк

Репутация: нет
Всего: нет



Мне мешали запятые. И поэтому нужно было искать их и менять на точки. Эту проблему я решил так 

Код

DecimalSeparator='.';


И там где запятые были , всё поменялось на точки.

 И всё  smile 
 Если чесно я непойму как это работает. Но работает  smile

Добавлено @ 19:06 
Цитата(Rockie @  22.6.2006,  18:55 Найти цитируемый пост)
а выше я пример чего привел?  

Я зделал имено как ты написал. Я заменил VCL AnsiString т.е. String  и использовал просто string  и всё работает.  smile  Спасибо.

Но тут мне недавно подошёл товарищь и говарит вставь в начале программы
Код

DecimalSeparator='.';


Я вобще в шоке. Всё работает . ненадо отлавливать эти запятые и менять на точки вобще.
Немогу понять как оно работает  smile  но главное работает  
PM MAIL   Вверх
Алексей
Дата 22.6.2006, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 19.6.2006

Репутация: нет
Всего: нет



Цитата

Я вобще в шоке. Всё работает .


Зачем же столько раз одно и тоже писать? smile

DecimalSeparator - это разделитель, если я правильно помню. Он может быть точкой, запятой или еще чем-то.
В данном случае Вы присвоили ему точку. 
PM MAIL   Вверх
mr.Anderson
Дата 22.6.2006, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Могу привести свой пример... он, мож, немного надуман, но работает (для класса AnsiString):
Код

//Подразумевается, что есть объект TMemo с именем Temp
AnsiString find=",",
                 news=".";
int point_pos=1;

point_pos=Temp->Text.Pos(find);

Temp->Text = Temp->Text.Delete(point_pos, 1);
Temp->Text = Temp->Text.Insert(news, point_pos);
 


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
maalan
Дата 30.6.2006, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 26.6.2006

Репутация: нет
Всего: нет



DecimalSeparator это, конечно, хорошо. он заменяет системный разделитель для конкретной программы. НО! у меня он, почему-то, иногда сбивается с точки на запятую и сразу лезут ошибки (что логично, все расчитано на точку) 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0878 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.