Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 14.10.2012
Сообщений: 95

Копирование текста между двумя словами

08.03.2015, 00:15. Показов 989. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
И снова здравствуйте.
C#
1
2
3
4
5
6
7
public void GetText(string sSource, string sBegin, string sEnd) //функция поиска и вырезания текста
        {
            string sOut; int i = 0, j = 0;
            for (i = sSource.IndexOf(sBegin) + sBegin.Length; i != sSource.IndexOf(sEnd); i++) j++;
            sOut = sSource.Substring(sSource.IndexOf(sBegin) + sBegin.Length, j);
            result = sOut;
        }
куки:
.ETSP1=D7157F5C08788486F4B6EDA8D80C52543 81D1742B80E34C68AE72D215793BEF7F567C4D4E 230D8567634534236A68511358B32665A2234223 2225F821237B5D787209A89A519D599EC66EF039 9301F627577690B76F9946B84C9AF5F3611495C9 783C07E212157EBC14574D8D93897A96A435AA64 B05FDF; domain=.sgsg.ru; expires=Sat, 21-Mar-2015 14:20:07 GMT; path=/; HttpOnly,_User_Key_=3B204EC41EB4FA8324F5 07E71AAA7E; domain=.sgsg.ru; expires=Mon, 07-Mar-2016 14:20:07 GMT; path=/
это работает:
C#
1
2
3
4
5
6
7
if (GetResp2.Headers["Set-Cookie"] != null)
                GetDate = GetResp2.Headers["Set-Cookie"];
            richTextBox1.Text = GetDate;
 
            GetText(GetDate, ".ETSP1=", ";");
            string ETSP1 = ".ETSP1=" + result;
            MessageBox.Show(result);
это не работает:
C#
1
2
3
GetText(GetDate, "_User_Key_=", ";");
            string _User_Key_ = "_User_Key_=" + result;
            MessageBox.Show(result);
//мои предположения - мне кажется что это из-за символа "_", но как это обойти не знаю.
пробовал так - GetText(GetDate, (char)95+"User"+(char)95+"Key"+(char)95+ "=", ";")
это уже чисто просто от безысходности. хелп. Ну или объяните как работать с coociecontainer'ом. Но лучше мой метод для начала.
result - глобальная переменная. жду ответа.

Добавлено через 1 минуту
не работает - в смысле программа банально зависает.

Добавлено через 4 часа 8 минут
Ответьте пожалуйста.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.03.2015, 00:15
Ответы с готовыми решениями:

Дана строка текста, между словами текста минимум один пробел.Написать программу, которая между словами текста ставит по три точки!!
Дана строка текста, между словами текста минимум один пробел.Написать программу, которая между словами текста ставит по три точки!!...

Удаление текста между двумя словами
Добрый день! Подскажите, пожалуйста, как в .doc удалить все между словами "слово1" и "слово2"? Добавлено через 15...

Поиск текста в файле между двумя данными словами
Привет всем. Подскажитье, как можно найти текст (неизвезный) между двух извесных слов в файле? Например: вася/давно.курит - Мы знаем...

4
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
08.03.2015, 10:45
Что за переменная GetResp2? HttpWebRequest? Есть класс Cookie или HttpCookie, нужно к ним приходить, чтобы не городить огород с разбором строк.
0
1 / 1 / 0
Регистрация: 14.10.2012
Сообщений: 95
08.03.2015, 13:40  [ТС]
GetResp2 - это получение ответа (содержимого) от Post/Get запросов, в моем случае это Post запрос.
Я разбирался с этими классами, там очень много кода получается, мне это не нужно, так как я знаю какие именно куки вытаскивать мне нужно, и мне не нужны там патчи, домены и прочее, ну если покажете довольно мелкий код буду благодарен (т.е как что инициализировать, выдирать нужные мне куки по имени, по валуе, и т.д.). А так я хочу понять, почему моя процедура работает не на все значения, а именно трабла с символом "_". Мой метод меня впринципе устраивает, только подскажите почему он работает не на все значения.
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
08.03.2015, 21:56
Наконец-то я вчитался в то, что ты написал. Почему эта функция у тебя void, а не string? Зачем использовать какие-то посторонние переменные, чтобы вернуть результат? Я бы сделал так:
C#
1
2
3
4
5
6
string GetText(string sSource, string sBegin, string sEnd) {
    int start, end;
    start = sSource.IndexOf(sBegin) + sBegin.Length;
    end = sSource.IndexOf(sEnd, start);
    return sSource.Substring(start, end - start);
}
0
1 / 1 / 0
Регистрация: 14.10.2012
Сообщений: 95
09.03.2015, 20:37  [ТС]
Не сделал я так, потому что реально не особо хорошо знал классы) а гуглить не стал, ну работает, да и ладно подумал я. Уже все подправил спасибо. Теперь вопрос в следующем:
Делаю Get запрос на сайт, получаю данные из куки CoookieContainer ответа от сайта. Затем посылаю Post запрос на сайт с нужными Cookies, все норм, НО в браузере следующее: посылается Post запрос с куками и логином и паролем (у меня так же), затем идет редирект на другую страницу, и как я понял он осуществляется Get запросом с предыдущими Cookies и полученными при ответе от сайта вместе, так вот как сделать этот Get запрос редиректа.

я редирект отключаю
C#
1
PostReq.AllowAutoRedirect = false;
и считываю куки (все прекрасо) для дальнейшего Get запроса, но он банально не отправляется, почему не пойму никак, может там как то надо снова включать редирект в этом же пост запросе, я не знаю, помогите плиз).
То есть после Post запроса я не могу послать ни 1 запроса. Почему?

Добавлено через 7 минут
Поставлю вопрос корректнее: есть редирект, как послать пост запрос, остановить редирект, вынуть куки, включите редирект (или не надо этого делать, я не пойму), прилепить куки и отправить запрос, соответственно он должен сам отправить гет запрос автоматически или все же его самому отправлять? P.S: после пост запроса никаких запросов отправить не могу: ни Post, ни Get. А если включить редирект в пост запросе он норм отвправляет, но без нужных предыдущих мне куков.

Добавлено через 3 часа 28 минут
Вопрос более не актуален, можно закрывать тему. Если народ будут искать ответ: закрывайте запросы абсолютно все за ненадобностью!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.03.2015, 20:37
Помогаю со студенческими работами здесь

Отобразить часть текста между двумя словами(наборов символов)
Есть такой ответ после GET-запроса с xNet Как вытащить "123456789", "Вася", "Пупкин"? Данные могут быть совершенно разной...

Удалить пробелы, стоящие между первым и вторым словами, а также между двумя последними словами
Задание: Удалить пробелы, стоящие между первым и вторым словами, а также между двумя последними словами.

Удалить пробелы, стоящие между первым вторым словами, а также между двумя последними словами
Удалить пробелы, стоящие между первым вторым словами, а также между двумя последними словами, на паскале

Поставить пробел между двумя словами
Вот часть такого-то кода: b = a.find("span", attrs={'class': 'vt_ec'}) #Execute Code bb = a.find("span", attrs={'class':...

Расшифровка текста песни с двумя смысловыми словами
В песне используется два смысловых слова — Yo и Nice — причем, Nice означает конец очередной буквы, а количество предшествующих слов Yo...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru