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

В тексте поиск ссылок

25.02.2014, 10:17. Показов 4373. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые форумчане! Подскажите как можно реализовать поставленную задачу.
Мы копируем текст, в котором присутствуют ссылки, все ссылки начинаются одинаково, меняются только последние 7 цифр. Мне нужно из текста извлечь все ссылки и поместить их или во внешний файл или в рядом стоящее поле. Как реализовать эту часть задания?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.02.2014, 10:17
Ответы с готовыми решениями:

Поиск ссылок по сайту
День добрый! Нужно осуществить поиск битых ссылок по сайту. Программа подгружает с главной страницы ссылки в ArrayList типа...

Поиск ссылок в txt
Ребят помогите пожалуйста.Нужно зачаровать кнопку button так,что при нажатии она показывала все ссылки находящиеся в txt. Сам очень долго...

Поиск html ссылок с возможностью замены
Создать программу в Windows Forms , которое позволяет загружать текстовый файл с html-кодом и выводить список всех ссылок, встречающихся в...

18
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 10:31
Текст в вордовском документе? Или же в открытом текстовом файле, типо txt ?
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 10:44  [ТС]
текст просто вставлен в richtextbox

могу показать часть текста в котором есть эти ссылки....
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 10:49
Да покажите, и что значит рядом стоящее поле? Второй richtextbox ?
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 10:59  [ТС]
вот текст
HTML5
1
2
не нужна помощь. Пойдешь ко мне плотником? Жми сюда ->http://vk.com/app2241359#5194_38410
Дворник обезврежен! Отметь мой успех и получи Инструменты Жми сюда ->http://vk.com/app2241359#5193_38410
можно и второй richtextbox....
потом же сделать так, чтобы программа автоматически открывала эти ссылке, через заданный интервал времени...
может эту идею и по другому можно реализовать,подскажите
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 11:33  [ТС]
вот мои нароботки
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
private void f(int i)
       {
           string ssilka = "http://vk.com/app2241359#";
           string massiv = richTextBox1.Text;
            if (massiv.Contains(ssilka))
            {
                i = massiv.IndexOf(ssilka, i);
                if (i == -1)
                    i = massiv.IndexOf(ssilka, 0);
     
                richTextBox1.Select(i, ssilka.Length);
                richTextBox1.Focus();
            }
  //          string link = "";
 
        }
        private void button1_Click(object sender, EventArgs e)
        {
            f(richTextBox1.SelectionStart);
        }
оно только выделяет заданный кусок текста, а 12 остальных случайных чисел нет
Миниатюры
В тексте поиск ссылок  
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 11:37
Лучший ответ Сообщение было отмечено Виктория_нимфа как решение

Решение

Вообще, да, необязательно ссылки потом где-то выводить, можно просто их хранить в строковой переменной.
Вот накатал свой вариант, программа сырая, но вам как пример, думаю, подойдёт. В дальнейшем доработайте.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Threading;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            string s = richTextBox1.Text,s1="",s2="";
            for (int i = 0; i < s.Length-4; i++)
            {
                if ((s[i] == 'h' || s[i] == 'H') && (s[i + 1] == 't' || s[i + 1] == 'T') && (s[i + 2] == 't' || s[i + 2] == 'T') && (s[i + 3] == 'p' || s[i + 3] == 'P')) // Ищем начало ссылки "http"
                {
                    try
                    {
                        s1 = s1 + s.Substring(i, s.IndexOfAny(new char[] { ',', ' ', '\n'}, i) - i) + "\n"; // Берём ссылку (в фигурных скобках разделители, я использовал пробел, запятую и конец строки, возможно вам нужно будет добавить ещё)
                    }
                    catch
                    {
                        s1 =s1+s.Substring(i, s.Length-i)+"\n";
                    }
                }
            }
            // Дальше в цикле пробегаемся по ссылкам
            for (int i = 0; i < s1.Split('\n').Length-1; i++)
            {
                Thread.Sleep(5000); // Приостановка главного потока (это не есть хорошо, программа "зависает" в это время) на 5000 миллисекунд, т.е. 5 сек
                s2 = s1.Split('\n')[i]; 
                Process.Start(s2); // Запускаем ссылку
            }
        }
    }
}
1
Заблокирован
25.02.2014, 11:50
Виктория_нимфа, после "http://vk.com/app2241359#" всегда будут ити 11 цифр?
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 14:16  [ТС]
нет не всегда.....

Добавлено через 48 секунд
сейчас исследую)))))спасибо)

Добавлено через 1 час 50 минут
es_, а как-то закрыть ссылку потом можно? тоже через определенное время...

Добавлено через 32 минуты
es_, найти бы как закрывается, то я сделаю цикл...открылась-закрылась-другая открылась
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 14:19
А у вас в каком браузере открываются ссылки?
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 14:26  [ТС]
es_, в chrome
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 14:38
C#
1
2
3
4
5
6
                Thread.Sleep(15000);
Process[] ps2 = System.Diagnostics.Process.GetProcessesByName("chrome");//Убиваем процесс chrome
foreach (Process p2 in ps2)
{
      p2.Kill();
}
Закроет все запущенные экземпляры Хрома)
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 14:45  [ТС]
es_, оно же больше времени будет занимать
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 14:51
так время поменяйте
C#
1
Thread.Sleep(15000);
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 15:02  [ТС]
es_, оно аварийно закрывает получается....а по другому никак?
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 15:42
вот так помягче будет
C#
1
2
3
4
5
6
                Thread.Sleep(15000);
Process[] ps2 = System.Diagnostics.Process.GetProcessesByName("chrome");//Убиваем процесс chrome
foreach (Process p2 in ps2)
{
        p2.CloseMainWindow();
}
НО, ведь начиная со второго открытия Хрома, он ведь будет открывать предыдущие ссылки, которые были ранее открыты в других вкладках!
А закрытие отдельной вкладки в браузере - это целая эпопея, если хотите углубиться, то гуглите C# закрыть вкладки браузера
А в целом, я думаю, вам не стоит париться на этот счёт

Как вариант: можно запускать в другом браузере, например, в IE
C#
1
2
3
4
5
                Thread.Sleep(5000); // Приостановка главного потока (это не есть хорошо, программа "зависает" в это время) на 5000 миллисекунд, т.е. 5 сек
s2 = s1.Split('\n')[i]; 
Process pr=Process.Start("iexplore.exe",s2); // Запускаем ссылку
Thread.Sleep(15000);
pr.Kill();
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 15:57  [ТС]
es_, спасибо
Цитата Сообщение от es_ Посмотреть сообщение
Process pr=Process.Start("iexplore.exe",s2);
а тут нельзя поставить chrome.exe?
0
 Аватар для es_
217 / 216 / 114
Регистрация: 14.01.2013
Сообщений: 459
25.02.2014, 16:12

Цитата Сообщение от Виктория_нимфа Посмотреть сообщение
а тут нельзя поставить chrome.exe?
Можно, но это тоже самое, что и
C#
1
Process.Start(s2);
Так как у вас браузер по умолчанию chrome
К каждому браузеру нужен свой подход, так для Хрома было бы *красивее* закрывать отдельно вкладки, но как это сделать... Погуглив вскользь я не нашёл решения
Так что
если хотите углубиться, то гуглите C# закрыть вкладки браузера
0
3 / 3 / 0
Регистрация: 25.04.2013
Сообщений: 64
25.02.2014, 16:30  [ТС]
es_, думаю нужно к имени вкладки как-то обратится...
буду искать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.02.2014, 16:30
Помогаю со студенческими работами здесь

Поиск ссылок с определенной последовательностью символов и переход по ним
Мне необходимо организовать поиск ссылок в listbox3, в ссылки которых могут входит 2 последовательности символов: ps.ram или //horos (то...

Поиск в тексте
Я нашел его в Интернете Библии фото о том, Например Бог искать получить ответ,как нужно найти слово.? примерно мне нужно помочь ...

Поиск символов в Тексте
Доброго всем веремени суток у меня вопрос по C# чтоб искать конкретное значение лучьше этого делать в ТекстБоксе или в ЛистБоксе? у...

Поиск редких слов в тексте
Всем привет, подскажите как найти редкие слова в тексте выведенном в listbox.

Поиск форм глаголов в тексте
Помогите, пожалуйста, написать программу следующего содержания. Моя проблема в том, что учусь на прикладной лингвистике, но программировать...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru