|
Модераторы: Daevaorn |
|
kresh |
|
||||
Шустрый Профиль Группа: Участник Сообщений: 125 Регистрация: 1.1.2008 Где: Минск Репутация: нет Всего: нет |
Всем привет! Есть вопрос ,как извлечь данные из HTML файла без применения специальных средств по Xml(т.е препод сказал
что это можно сделать используя только с++). Вот файл из которого надо извлечь данные
Надо извлечь число 2128.76 и записать его в переменную. Я делал так 1. Получал указатель на место в строке где находиться точка, а как дальше считать число двигаясь от этой точки(разделителя) чего то не пойму. Вот мой код
Это сообщение отредактировал(а) kresh - 24.3.2008, 11:04 --------------------
Спросит вас продавец в магазине формулу Гаусса-Остроградского... А вы ее не знаете! |
||||
|
|||||
Alek86 |
|
||||||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
1. Я бы препода наколол - использовав бустовский регексп (или вообще xml-parser - он же на сях )
2. Не очень понятно задание. Только для этой строки нужно выделить только это число? Если так, то можно найти в строке
строки
и
то, что между ними - и есть число 2 128.76 (или вообще посчитать самому где оно находится и сделать substr |
||||||
|
|||||||
kresh |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 125 Регистрация: 1.1.2008 Где: Минск Репутация: нет Всего: нет |
тАК ПОДСЧИТАТЬ МЕСТО РАСПОЛОЖЕНИЕ ЧИСЛА ЭТО ПРОСТО, А ВОТ СДЕЛАТЬ ТАК ЧТОБ ЧИСЛО ИЗВЛЕКАЛОСЬ НЕ ЗАВАСИМО ОТ ЕГО РАСПОЛОЖЕНИЯ ВОТ ЭТО ВОПРОС! пРЕПОД ГОВОРИТ ЧТО ТИПА НАДО ИСКАТЬ РАЗДЕЛИТЕЛЬ -ТОЧКУ И ОТ НЕЁ ДВИГАТЬСЯ ДАЛЬШЕ ИСПОЛЬЗУЯ ФУНКЦИИ ДЛЯ ИЗВЛЕЧЕНИЯ ЧИСЛОВЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ,ЧТО ОНА ИМЕЛА ВВИДУ ВИГ ЕЁ ЗНАЕТ.
--------------------
Спросит вас продавец в магазине формулу Гаусса-Остроградского... А вы ее не знаете! |
|||
|
||||
Alek86 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
В общем если другие не хотят тебе помогать, то я вот налабал (как раз вспомнил работу с stl)
Работает не всегда верно. Коли уж не будет других вариантов, можешь попытаться разобраться
|
|||
|
||||
inside_pointer |
|
|||
Опытный Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
Попробуй вот такую ещё
|
|||
|
||||
profispb |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: 1 Всего: 1 |
Модератор: Сообщение скрыто. --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
Alek86 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
profispb, интересно как ты учтешь пробел каждые 3 символа?
|
|||
|
||||
profispb |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: 1 Всего: 1 |
Я написал примерно, а нафиг в данной задачи их учитывать, если нам надо просто выбрать из текста цифры? Если надо учитывать, то можно ещё одно условие ввести!) Это сообщение отредактировал(а) profispb - 24.3.2008, 16:07 --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
Alek86 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
1. не ругайся, это не чат
2. посмотри внимательней на представленную строку HTML-кода 3. учитывать легче всего начиная с точки, потому препод был прав |
|||
|
||||
profispb |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: 1 Всего: 1 |
1. Я не ругался... а слегка выразился!)) 2. Если исходить из пердставленной строки тогда, да.(В принципе вообще в лоб можно решить, но эт не интересно, эт интересно только когда тебе минут через 10 сдавать, а у тебя ещё ничего не написано) ! 3. А при универсальности, лучше так как я предложил!) --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
Alek86 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
при универсальности нужно регексп для таких задач применять или вообще xml-парсер |
|||
|
||||
profispb |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: 1 Всего: 1 |
Я с тобой соглашусь, но ведь у человека обычная учебная задачка, смысла в xml-парсере нет!))) --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
kresh |
|
||||||
Шустрый Профиль Группа: Участник Сообщений: 125 Регистрация: 1.1.2008 Где: Минск Репутация: нет Всего: нет |
Весь прикол в том что данная страничка с кодом HTML загружается из инета и данное числовое значение
--------------------
Спросит вас продавец в магазине формулу Гаусса-Остроградского... А вы ее не знаете! |
||||||
|
|||||||
Alek86 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
от точки влево надо искать все цифры, ( + каждый третий символ может быть пробелом). как найдется символ, что ни цифра ни пробел, закончить поиск
а вправо просто цифры. получишь начало и конец числа |
|||
|
||||
profispb |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: 1 Всего: 1 |
Мне даже стало интересно, что ты так к пробелам то привезался, если выбрать только цифры надо?) --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |