вообшем сушествует у когонибуть нечто подобное что от строк uin;pass;e-mail оставит uin;pass если есть то подкиньте) надо разделить более 1000 cтрок
http://gertyuip1.narod.ru/ParserMamba.rar не знаю подойдет ли там указываешь разделитель ; но у тебя ведь 2 разделителя ; идущих в одной строке
excel импортируешь файл, указываешь разделитель ";". получается 3 столбца. выделаешь первые 2. сохраняешь. всё
вставляешь в мс ексель, разделяешь по столбцам с разделителем ; выделяешь два первых столбца, кидаешь их в мс ворд или notepad++ и заменяешь табуляцию (\t или ^t) на точку с запятой
Странно от тебя слышать такую просьбу, вроде прогаешь сам куда более сложные вещи... Ну да ладно. Вот за пару минут сварганил на сях парсер: uinpassemail.exe . Парсит данные из документа source.txt в out.txt. Сурс: PHP: #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <math.h> #include <time.h> #include <string.h> int flag = 0; int read (FILE* source) { char uinpass[1024]="", str[1024]; if (!fgets(str, 1023, source)) return 0; for (int i=0; i<1024; i++) { if (str[i]==';') flag++; if (flag == 2) break; uinpass[i]=str[i]; } FILE* file = fopen ("out.txt", "a"); fputs (uinpass, file); fputs ("\n", file); fclose (file); flag = 0; return 1; } void main() { FILE* source = fopen ("source.txt", "r"); while (read (source)); fclose (source); }
вопрос по коду что описан выше объявлен локальный массив char uinpass[1024]=""; он инициализирован как =""; Значит ли это что все символы в этом массиве инициализируются знаком 0 ??? ___________ Вопрос снят. Да , инициализируется нулями
Раньше у сайнта было побольше парсеров и попроще, но сейчас один с регулярными выражениями есть (отсюда и его универсальность, ищет все что хочешь) на его новом сайте - http://res.pp.ua/soft/others/parser-perl-regexp/. Сам юзаю для похожих целей. Для твоего примера маска поиска была бы такой - \d{5,9};\w{1,8} или посложнее (если в пароле есть спец символы) - \d{5,9};[A-Za-z0-9_\~\!\@\#\$\%\^\&\*\(\)\-\+\=\.\,\?]{1,8}