Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под Windows > C++ Builder
Перезагрузить страницу Хелп!!! Разделение строки символом
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
demon74 demon74 вне форума
Member
 
Сообщений: 65
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.12.2005
По умолчанию Хелп!!! Разделение строки символом - 31.01.2006, 12:27

Народ!!! помогите плизз!!! суть: имеется строка с данными , например:
AAA&BBB&CCC&DDD&EEE нужно занести в Edit1->AAA в Edit2->BBB
в Edit3->BBB и т.д. ......замучился уже....строку без символа "&" считать смог...но разделить не могу(((
вот мой код:

Код:
void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,
      TCustomWinSocket *Socket)
{

ServerSocket1->Active = true;
Memo1->Lines->Add(Socket->ReceiveText());

AnsiString dann=(Memo1->Lines->Text);
for ( int i=3; i<dann.Length(); i++ )




if ( dann[i] != '^' && dann[i] != '&' && dann[i] != '#' && dann[i] != ' ')
  {


     Edit1->Text = Edit1->Text+dann[i];
}
}

Заранее всем спасибо!!!
Ответить с цитированием
  (#2 (permalink)) Старый
Jonano Jonano вне форума
Специалист
 
Аватар для Jonano
 
Сообщений: 3,541
Сказал(а) спасибо: 2
Поблагодарили 14 раз(а) в 14 сообщениях
Регистрация: 19.04.2005
По умолчанию 31.01.2006, 13:29

Юзай ф-ю strtok. Подробности - в MSDN.
Ответить с цитированием
  (#3 (permalink)) Старый
demon74 demon74 вне форума
Member
 
Сообщений: 65
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.12.2005
По умолчанию 31.01.2006, 17:29

Да чего я тока не перепробовал уже(((....наверное надо напиться хорошенько...а то уже крышняк сьезжает(((((((((((ЛЮДИ!!! ПАМАГИТЯЯЯ!!!
Ответить с цитированием
  (#4 (permalink)) Старый
Jonano Jonano вне форума
Специалист
 
Аватар для Jonano
 
Сообщений: 3,541
Сказал(а) спасибо: 2
Поблагодарили 14 раз(а) в 14 сообщениях
Регистрация: 19.04.2005
По умолчанию 31.01.2006, 17:41

strtok не помогла?
Плохо пробовал. Покажи код.
Ответить с цитированием
  (#5 (permalink)) Старый
Garik Garik вне форума
Member
 
Сообщений: 6,201
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Регистрация: 07.06.2002
По умолчанию 31.01.2006, 17:43

Цитата:
Originally posted by demon74
[b]Да чего я тока не перепробовал уже(((
Что-то этих попыток не видно...
Тот код, что ты привёл, просто вырезает из строки символы '^', '&', '#' и ' '. Притом, вырезает почему-то начиная только с 4й позиции.
А это на условие задачи не очень похоже.
Предъяви попытки - тебе укажут на твои ошибки.
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
Nicky_cr Nicky_cr вне форума
Member
 
Сообщений: 102
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.01.2006
По умолчанию 31.01.2006, 18:15

привет
удобнее иметь массив Едитов далее
Код:
int k=0;
for ( int i=0; i<dann.Length(); i++ ) 
if ( dann[i] != '^' && dann[i] != '&' && dann[i] != '#' && dann[i] != ' ') 
  { 
     myEdit[k]->Text = myEdit[k]->Text+dann[i]; 
 } 
else k++;
С уважением Ники
Ответить с цитированием
  (#7 (permalink)) Старый
Rider Rider вне форума
Member
 
Сообщений: 304
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.05.2005
По умолчанию 31.01.2006, 18:16

можно ж просто сформироваь временный буфер. в цикле дошел до апперсанта (просто if для сравнения)... запихнул в едит! очистил буфер и дальше до конца..

помоему самый простой вариант...
Ответить с цитированием
  (#8 (permalink)) Старый
Jonano Jonano вне форума
Специалист
 
Аватар для Jonano
 
Сообщений: 3,541
Сказал(а) спасибо: 2
Поблагодарили 14 раз(а) в 14 сообщениях
Регистрация: 19.04.2005
По умолчанию 31.01.2006, 18:20

C strtok проще.
Ответить с цитированием
  (#9 (permalink)) Старый
Rider Rider вне форума
Member
 
Сообщений: 304
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.05.2005
По умолчанию 31.01.2006, 18:27

так функции надо знать
а вот это иногда сложно бывает....)
Ответить с цитированием
  (#10 (permalink)) Старый
Jonano Jonano вне форума
Специалист
 
Аватар для Jonano
 
Сообщений: 3,541
Сказал(а) спасибо: 2
Поблагодарили 14 раз(а) в 14 сообщениях
Регистрация: 19.04.2005
По умолчанию 31.01.2006, 18:42

Ну, если память короткая, то сложно.
Ответить с цитированием
  (#11 (permalink)) Старый
demon74 demon74 вне форума
Member
 
Сообщений: 65
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.12.2005
По умолчанию 07.02.2006, 10:25

Господа программёры!! Прошу прощения что долго не отвечал...болел..Всем спасибо за ответы!!! и Ваши советы!!!
Но проблема к сожалению до сих пор актуальна((( Получается забить в Edit1 только кусок строки лишь до первого"&" а в остальные Edit_ы ну ни в какую((( помогите, ПЛИЗЗ!!!
Привожу свой код:

Код:
Memo1->Lines->Add(Socket->ReceiveText());
  AnsiString str = (Memo1->Lines->Text), isk="&";
    int n  = str.Pos(isk);
       for(int i=1; i<=(Memo1->Lines->Count); i++){
if(n)
     Edit1->Text= str.SubString(4, n-4);
}
      }

Заранее благодарен!!!
Ответить с цитированием
  (#12 (permalink)) Старый
dddd dddd вне форума
Новичок
 
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.02.2006
По умолчанию 09.02.2006, 20:55

Кто то там просил разбивку... Это подойдет ?

Код:
TStringList *s=new TStringList;
ExtractStrings(TSysCharSet()<<'&',TSysCharSet()<<' ',Memo1->Lines->Text.c_str(),s);
for(int i=0;i<s->Count;i++)
ShowMessage(s->Strings[i]);
delete s;
Ответить с цитированием
Ads
  (#13 (permalink)) Старый
demon74 demon74 вне форума
Member
 
Сообщений: 65
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 26.12.2005
По умолчанию 09.02.2006, 21:04

Спасибо огромное...я уже разобрался....но всё равно СПАСИБО!!!
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разделение строки Катюнька Python 5 08.01.2012 20:00
Помогите хелп хелп хелп Помогите плиз Ноутбуки 5 23.08.2011 13:59
Разделение символами строки Jerry-k Perl 1 22.07.2011 16:42
Разделение списка zener Prolog 6 28.10.2010 23:36
разделение списка на два Angelin Prolog 8 24.09.2010 03:10
Каким символом или символами в Лиспе ставятся комментарии Lisenok Lisp 1 14.04.2009 07:21
Является ли третий элемент списка целым числом или символом zyamba Lisp 9 28.03.2009 12:02
Разделение строки как реализовать Henrih .NET 5 21.11.2008 20:56
СНОВА СТРОКИ! ПЛИЗЗ ХЕЛП! klim666 Pascal 1 29.05.2006 00:29
Разделение списка Иринаnew Prolog 7 05.05.2006 23:20
Разделение строки в таблице blur Delphi 5 21.07.2005 15:06
Выборка по количеству символом Kelt SQL 2 22.12.2004 11:24



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов