|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
17.03.2011, 10:34 | #1 |
Пользователь
Регистрация: 30.07.2010
Сообщений: 30
|
Вычислить количество символов участка кода на интернет странице
Помогите. Мне нужно вычислить количество символов участка кода на интернет странице (точнее на XML странице).
Есть строка <online>, но она может выглядеть и как <online type="2"> и как <online mid="7865" type="2">, причем это значение меняется очень часто. вообще, если эта строка на странице присутсвует, то фиксировано только ее начало - <online и окончание - символ ">" (первый попавшийся после "<online". какую функцию можно использовать что бы вычислить длину этого участка. нужно для парсера. сделал уже почти все там, одна эта функция держит. пробовал функцию Length но никак не получается сделать так, что бы она вычисляла длину от позиции P до заданного символа. |
17.03.2011, 10:41 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
17.03.2011, 10:49 | #3 | |
Пользователь
Регистрация: 30.07.2010
Сообщений: 30
|
Цитата:
Length было бы наиболее правильно использовать. а то у меня и так вложенность большая. если бы код писал не я можно было бы запутаться там. вот какой код у меня: Delete(Send,1, P+Length(P, '>')); мне нужно изменить то что в скобках после length |
|
17.03.2011, 10:52 | #4 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Length возвращает длину строки вообще то, что вы пытаетесь собаке пятую ногу пришить то?
я назвал ключевую функцию, это PosEx. Цитата:
весь тэг вернет Copy, ShowMessage там для примера. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
17.03.2011, 11:01 | #5 | |
Пользователь
Регистрация: 30.07.2010
Сообщений: 30
|
Цитата:
дело в том что мне как раз нужно обрезать из текста заданную длину. а этот тэг мне не нужен. нужно то что находится после него до тэга </online> Поэтому я и использую функцию Delete. Ну я сейчас попробую кое-что. может сработает. Последний раз редактировалось Stilet; 23.03.2011 в 09:40. |
|
17.03.2011, 11:24 | #6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
17.03.2011, 11:25 | #7 |
Пользователь
Регистрация: 30.07.2010
Сообщений: 30
|
проверил. на функцию posEx ругается.
неверный тип данных, а так же считает ее переменной. |
17.03.2011, 11:27 | #8 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
у вас Делфи 6?
проверьте StrUtils или StrUtil есть в юзес? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
17.03.2011, 11:29 | #9 | |
Пользователь
Регистрация: 30.07.2010
Сообщений: 30
|
Цитата:
вот какой код у меня был вначале: Delete(Send,1, P+7); нужно семерку заменить на такое значение, чтобы обрезался код с позиции P до первого встретившегося после позиции P символа > нет, 7. но проверю все равно. В строке Delete(Send,1, (Copy(s1,i1,PosEx('<',s1,i1)-i1))); выдает ошибку [Error] Unit1.pas(344): Incompatible types после последней скобки Последний раз редактировалось Stilet; 23.03.2011 в 09:41. |
|
17.03.2011, 12:29 | #10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а не надо там ничего удалять, посмотрите сначало что вам Copy вернет, я ж не спроста ShowMessage ставлю, при отладке очень полезно
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что делать, если количество символов в билдере не соответствует количеству символов в билде? | BoT_T | Общие вопросы Delphi | 0 | 16.11.2010 10:42 |
Вызов события из произвольного участка кода в WPF | Casper-SC | Общие вопросы .NET | 1 | 24.07.2010 10:23 |
количество строк на последней странице документа | Jaroslav | Microsoft Office Excel | 5 | 08.06.2010 08:43 |
количество цифр и количество символов до первой гласной буквы | 111111 | Общие вопросы C/C++ | 2 | 22.12.2008 12:15 |