Найти все ссылки в TMemoDelphi , Компоненты и Классы , TMemo и TRichEditНайти все ссылки в TMemo
Оформил: DeeCo { For this tip you need Memo1, ListBox1, Label1, Button1. Fur diesen Tip braucht man ein Memo1, eine ListBox1, ein Label1 und einen Button1. } procedure TForm1.Button1Click(Sender: TObject); var i, p: Integer; s: string; begin ListBox1.Clear; for i := 0 to Memo1.Lines.Count - 1 do begin if Pos('http://', Memo1.Lines.Strings[i]) > 0 then begin s := ''; {If the current line contains a "http://", read on until a space is found Die aktuelle Zeile wird nach der Zeichenfolge "http://" durchsucht und bei Erfolg ab der gefundenen Position ausgelesen, bis ein Leerzeichen auftritt...} for p := Pos('http://', Memo1.Lines.Strings[i]) to Length(Memo1.Lines.Strings[i]) do if Memo1.Lines.Strings[i][p] <> ' ' then s := s + Memo1.Lines.Strings[i][p] else break; {Remove some characters if address doesn't end with a space Falls die gefundene Adresse nicht mit einem Leerzeichen abschlie?t, werden hier noch anhangende Textzeichen entfernt...} while Pos(s[Length(s)], '..;!")]}?''>') > 0 do Delete(s, Length(s), 1); // Add the Address to the list... //Gefundene Adresse in die Liste aufnehmen... ListBox1.Items.Add(s); end; end; // Show the number of Addresses in Label1 // Die Zahl der gefundenen Adressen in Label1 anzeigen... if ListBox1.Items.Count > 0 then label1.Caption := IntToStr(ListBox1.Items.Count) + ' Adresse(n) gefunden.' else label1.Caption := 'Keine Adresse gefunden.'; end; Программный код на Delphi, который извлекает все URL из компонента Переменные
Процедура
Замечания
Альтернативное решение
Чтобы улучшить этот код, можно было бы использовать регулярные выражения (например, компонент Например, можно было бы использовать регулярное выражение В статье описывается способ поиска и добавления всех ссылок в формате 'http://' из TMemo-компонента в ListBox-компонент с помощью кнопки на форме. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: TMemo и TRichEdit ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |