Форум: Форум C++Разное
Новые темы: 00
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: С++ разделение строки на слова
 
 автор: Frukt   (24.08.2007 в 13:51)   письмо автору
 
 

доброго времени суток!
Скажите пожалуйста как разбить строку на слова по разделителю.
к примеру есть вот такая строка " 000040 | ICS=Uniflux line= CTA-22-54 1flix 2MBit/s | 0 | | | | | "
разделитель " | " ! Мне нужно вывести каждое слово на новую строку, чтоб получилось примерно вот так
-----------------------------------------------
000040

CS=Uniflux line= CTA-22-54 1flix 2MBit/s

0
-пустая строка
-пустая строка
-пустая строка
-пустая строка
---------------------------------------------------
Пробелы учитываются тоже, если есть разделитель а потом пусто и опять разделитель значит пустая строка. Вся проблема состоит в том что фаил имеет 302712-строк и как сэтим быть не знаю

Выложите пример, кому не трудно. За ранее спасибо

  Ответить  
 
 автор: Frukt   (25.08.2007 в 17:59)   письмо автору
 
   для: Frukt   (24.08.2007 в 13:51)
 

ау люди хелпппп

  Ответить  
 
 автор: alex19921992   (26.08.2007 в 18:21)   письмо автору
 
   для: Frukt   (25.08.2007 в 17:59)
 

char* _getfirstoperator(char* s,char ch11)
{
char s1[1000];s1[0]=0;
int k=findsym(s,ch11);
if(k==-1)return "";
strcpy(s1,cpy(s,0,k+1));
return s1;
}

возвращает первое слово из строки. разделитель ch11

  Ответить  
 
 автор: Frukt   (10.09.2007 в 09:46)   письмо автору
 
   для: alex19921992   (26.08.2007 в 18:21)
 

Огромное спасибо! тему можно закрыть

  Ответить  
 
 автор: dima_s_d_s   (12.09.2007 в 14:40)   письмо автору
 
   для: Frukt   (10.09.2007 в 09:46)
 

можно сделать проще

Пример

char F[]="000040 | ICS=Uniflux line= CTA-22-54 1flix 2MBit/s | 0 | | | | | ";
char*v=strtok(F,"|"); while (v!=0){cout<<v<<"\n"; v=strtok(0,"|");}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования