Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++ Builder

Войти
Регистрация
Восстановить пароль
 
 
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
#1

Не работает парсинг - C++ Builder

09.04.2013, 00:31. Просмотров 970. Ответов 19
Метки нет (Все метки)

Ребят,подскажите,почему не работает парсинг.
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
 TStringList* Sections = new TStringList;
 int a=0,b=0;
 Sections->Text=Form1->Memo1->Lines->Strings[Form1->o];
 Form1->Memo1->Lines->Strings[Form1->o]="";
 a=((Sections->Text.Pos(Form1->Edit1->Text))+Form1->Edit1->Text.Length()); 
 Sections->Text.Delete(Sections->Text.Pos(Form1->Edit1->Text),(Sections->Text.Pos(Form1->Edit2->Text))+Form1->Edit2->Text.Length()); 
 b=(Sections->Text.Pos(Form1->Edit2->Text))+Form1->Edit2->Text.Length();
 Form1->Memo1->Lines->Strings[Form1->o]=Sections->Text.SubString(a,b+a);
 Form1->o++;
 Form1->Edit3->Text=IntToStr(a)+" "+IntToStr(b);
 a=b=0;
Вот исходный текст:

HTML5
1
2
3
4
5
http://www.cyberforum.ru/cpp-beginners/thread201804.html
http://vk.com/gdasar
http://www.smw75.ru/delphi-synapse-poluchaem-dannye-v-gzip/
http://www.webdelphi.ru/2011/06/ispolzuem-gzip-v-synapse/
http://********/index.asp?main=task&id_task=52
Вот что получается:
HTML5
1
2
3
4
5
6
www.cyberforum.
vk.com/gdasar
 
www.smw75.ru/de
www.webdelphi.r
http://********/index.asp?main=task&id_task=52
В Первом эдите http:// во втором /.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2013, 00:31
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не работает парсинг (C++ Builder):

не работает парсинг из фреймов !!! - C++ Builder
есть код который должен из фреймов выдергивать гиперсылки , но он почему то не работает, помогите найти ошибку! void...

Не работает парсинг на PHP - PHP
Есть сайт http://oil-price.net/ , на его странице указана цена нефти WTI и Brent. Подскажите пожалуйста как можно выпарсить только цену...

Xml парсинг. Не работает - C++ Qt
Есть xml документ: <?xml version="1.0" encoding="UTF-8"?> <xml_file> <Test_Item> <Question> В каком году началась вторая...

Парсинг json. Не работает deserealize - C#
Здравствуйте, возникла проблема: не работает deserealize, не могу понять в чём проблема, помогите найти, заранее спасибо. using...

Почему не работает многопоточный парсинг через webbrowser? - C#
Привет всем. Я честно говоря фигею. Не пойму что происходит и в чем причина . Делаю программу, которая заходит на поиск, вводит запрос,...

Парсинг на JSOUP APACHE, не работает read и getInputStream - Программирование Android
Начинаю писать парс под андроид для динамического сайта. Использую JSOUP и APACHE, проблема состоит в том, что в Android Studio выделяются...

19
Ddv122
Почемучка)
1237 / 297 / 16
Регистрация: 23.12.2010
Сообщений: 1,998
Записей в блоге: 1
09.04.2013, 01:02 #2
а что получится то должно?
0
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
09.04.2013, 01:16  [ТС] #3
Почемучка)
Должно выпорсится урлы сайтов,без префиксов.
Например www.smw75.ru
0
Ddv122
Почемучка)
1237 / 297 / 16
Регистрация: 23.12.2010
Сообщений: 1,998
Записей в блоге: 1
09.04.2013, 11:18 #4
Gdasar, К примеру так,
C++
1
2
3
4
5
6
  String Str;
 String Text=("www.cyberforum.ru/cpp-beginners/thread201804.html");
    int begin= Text.Pos("www");
    int end= Text.Pos("/");
    if( begin && end )  Str= Text.SubString(begin,end-begin+String("").Length() );
  ShowMessage(Str);
Добавлено через 9 часов 23 минуты
Или строки в TStringList и делите их по "/" , ещё проще будет)
1
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
10.04.2013, 00:16  [ТС] #5
А с моим кодом скажи,что не так! Уж очень хочется понять,где я накосячил.

Добавлено через 8 часов 38 минут
Ddv122 твой код не сможет выпарсить урлы!
0
AntonChik
1085 / 583 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
10.04.2013, 06:13 #6
Gdasar, во-первых учись писать проще, код читать трудно. меньше повторений, больше промежуточных переменных.
во-вторых, зачем юзать TStringList, если ты пользуешься им как одиночным AnsiString?
в-третьих, если ты думаешь что в 7 строке происходит удаление, то ты ошибаешься...

C++
1
Sections->Text = Sections->Text.Delete(...
0
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
10.04.2013, 13:39  [ТС] #7
Ну а что же происходит в седьмой строке?
0
AntonChik
1085 / 583 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
10.04.2013, 13:50 #8
удаление происходит, но не применяется)
а если бы происходило, то в 9 строке бралась бы подстрока начиная с a и ты бы получал
erforum.
вместо
www.cyberforum.
так что тебе как бы повезло, но это косяк)
0
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
10.04.2013, 14:27  [ТС] #9
А как исправить косяк? Какие исправления внести?
0
Ddv122
Почемучка)
1237 / 297 / 16
Регистрация: 23.12.2010
Сообщений: 1,998
Записей в блоге: 1
10.04.2013, 15:08 #10
Цитата Сообщение от Gdasar Посмотреть сообщение
твой код не сможет выпарсить урлы!
и почему же стесняюсь спросить?
0
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
10.04.2013, 16:18  [ТС] #11
Цитата Сообщение от Ddv122 Посмотреть сообщение
и почему же стесняюсь спросить?
Может-может,только это не то,что мне нужно!
0
Avazart
Эксперт С++
7585 / 5570 / 330
Регистрация: 10.12.2010
Сообщений: 24,991
Записей в блоге: 17
10.04.2013, 17:08 #12
Офигеть, кто-то с регулярками boost/regex разобраться не может, а кому-то да же метод Pos() не по силам ....
1
Gdasar
190 / 51 / 10
Регистрация: 18.02.2013
Сообщений: 487
Записей в блоге: 9
Завершенные тесты: 1
10.04.2013, 17:31  [ТС] #13
Avazart мог бы здесь даже не писать! От тебя как всегда 0 помощи,только критики полно!
0
Avazart
Эксперт С++
7585 / 5570 / 330
Регистрация: 10.12.2010
Сообщений: 24,991
Записей в блоге: 17
10.04.2013, 17:41 #14
Если всегда не восприниМать критику ... у тебя всегда будет 0 ...

Если твой код никто не исправляет, а сразу пишут свой вариант, то стоит задуматься о своем стиле написания.
1
AntonChik
1085 / 583 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
11.04.2013, 05:37 #15
Цитата Сообщение от Gdasar Посмотреть сообщение
А как исправить косяк? Какие исправления внести?
как сделать чтоб удалялось, я написал, дальше сам поймешь что делать.

Цитата Сообщение от Ddv122 Посмотреть сообщение
и почему же стесняюсь спросить?
код не справится если url начнется с "http://" ))
1
11.04.2013, 05:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2013, 05:37
Привет! Вот еще темы с ответами:

Как работает этот код - (парсинг текста)? - Perl
Наткнулся на такой пример на SO - пример. Весь код под спойлером, дабы не захламлять. #!/usr/bin/perl use strict; use warnings; ...

Ошибка: Не работает парсинг vk, что за ошибки не могу понять. - Python
Не работает парсинг vk, что за ошибки не могу понять. Помогите пожалуйста. import requests from bs4 import BeautifulSoup import...

Парсинг; сложный случай; For - не работает; (разбивка строки (с кэшированием) - CMD/BAT
Парсинг; сложный случай; For - не работает; (разбивка строки). День добрый, ... Есть (*) программа 'coma.exe' выдающая...

[solved] Магия: парсинг JSON из файла не работает. Из строки все нормально - PHP
Всем привет. Начинаю понимать, что в веб-программировании творится неистовое волшебство. А суть-то в чем.. Есть у меня сий скрипт: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru