Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка на веб ссылки 
V
    Опции темы
Михалыч
Дата 1.8.2009, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 472
Регистрация: 1.7.2008

Репутация: нет
Всего: нет



Подскажите как можно проверять на вебссылки введенный текст.
Например в Edit пишу простой текст,проверяю, в Showmessage пишет- не гиперссылка
И наоборот ,пишу в Edit гипперссылку ,проверяю,пишет- гипперссылка


--------------------
За частый поиск был забанен во всех известных поисковых системах.
Обиженных  комодераторов: 1 
PM MAIL   Вверх
Keeper89
Дата 1.8.2009, 22:51 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 20
Всего: 58



Можно, с помощью регулярный выражений или просто поиском "http://" в тексте.


--------------------
PM MAIL WWW   Вверх
Михалыч
Дата 2.8.2009, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 472
Регистрация: 1.7.2008

Репутация: нет
Всего: нет



Цитата(Keeper89 @  1.8.2009,  22:51 Найти цитируемый пост)
Можно, с помощью регулярный выражений или просто поиском "http://" в тексте. 

А немного поподробней на эту тему можно.
Или где то почитать.
А то не знаю как правильно перефразировать на эту тему вопрос в поиске


--------------------
За частый поиск был забанен во всех известных поисковых системах.
Обиженных  комодераторов: 1 
PM MAIL   Вверх
THandle
Дата 2.8.2009, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 65
Всего: 372



Михалыч, ну для начала глянь вот эту вот статью:

http://forum.vingrad.ru/articles/topic-213075.html

Добавлено @ 09:24
Можно конечно и без регулярок, обычными Pos'ами попробовать сделать.
PM   Вверх
nod3264
Дата 2.8.2009, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: 1
Всего: 1



Код

//Функция заменяет в переменной указанные символы, либо их сочетание
function ReplaceSub(str, sub1, sub2: string): string;
var
  aPos: Integer;
  rslt: string;
begin
  aPos := Pos(sub1, str);
  rslt := '';
  while (aPos <> 0) do
  begin
    rslt := rslt + Copy(str, 1, aPos - 1) + sub2;
    Delete(str, 1, aPos + Length(sub1) - 1);
    aPos := Pos(sub1, str);
  end;
  Result := rslt + str;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
//Если исходный текст не изменился после того как убрали 'http://' либо 'https://' значит это не гиперссылка
if (Edit1.Text <> ReplaceSub(Edit1.Text,'http://','')) or (Edit1.Text <> ReplaceSub(Edit1.Text,'https://','')) then begin
ShowMessage('Гиперссылка');
end else begin
ShowMessage('Не гиперссылка');
end;
end;


Ну это универсальный метод, так можно делать почти в любых подобных ситуациях, а вообще проще и правильней будет сделать так:

Код

if (pos('http://',Edit1.Text) <> 0) or (pos('https://',Edit1.Text) <> 0) then begin
ShowMessage('Гиперссылка ');
end else begin
ShowMessage('Не гиперссылка');
end;


Это сообщение отредактировал(а) nod3264 - 2.8.2009, 10:23
PM MAIL   Вверх
Михалыч
Дата 2.8.2009, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 472
Регистрация: 1.7.2008

Репутация: нет
Всего: нет



Всем спасибо!


--------------------
За частый поиск был забанен во всех известных поисковых системах.
Обиженных  комодераторов: 1 
PM MAIL   Вверх
Keeper89
Дата 2.8.2009, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 20
Всего: 58



nod3264, а зачем вводить еще такие функции если уже есть StringReplace, например?


--------------------
PM MAIL WWW   Вверх
nod3264
Дата 2.8.2009, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: 1
Всего: 1



Точно, я её упустил из виду.  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1158 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.