http ve www adreslerini çözümlemek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

http ve www adreslerini çözümlemek

Mesaj gönderen mussimsek »

Merhaba,

Elimde html dosyaları var. bunların içinde web adresleri var, bunları tıklanabilir hale getirmek istiyorum. Biraz uğraştım ancak çok dallanıp budaklanacak bir olay gibi geldi. Adresler şu şekillerde olabiliyor :

Kod: Tümünü seç

- www.delphiturkiye.com 
- http://www.delphiturkiye.com
- http://www.delphiturkiye.com/filanca.htm
- http://www.delphiturkiye.com/filanca.html
- www.delphiturkiye.com/filanca.htm
gibi. Bazen linkin devamı bir sonraki satıra da kayabiliyor. Buna da dikkat etmek lazım tabii.

Örnek : Mesela www.delphiturkiye.com metnini ben şu şekle getirmek istiyorum :

<a href="http://www.delphiturkiye.com" target="_blank">www.delphiturkiye.com</a>

Daha önce uğraşan oldu mu böyle birşeyle?

Teşekkürler.
Kullanıcı avatarı
derya
Kıdemli Üye
Mesajlar: 68
Kayıt: 16 May 2004 02:43
Konum: Almanya/Bonn
İletişim:

Mesaj gönderen derya »

Delphi Inspiration DIHtmlParser'ı belki işinize yarayabilir.
http://www.zeitungsjunge.de/delphi/htmlparser/
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Teşekkürler @derya,

deneyeceğim.

kolay gelsin.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Merhabalar... :)

- HTML Parse işiyle şu sıralar çok istek geldiğinden çözüm adına biraz tecrübe sahibi olmuşluğum var... :lol:

- Bir link alt satırda devam ediyor olsa dahi, WordWrap disable edilmiş bir TRichEdit veya TMemo'ya aktardıktan sonra yapılamayacak şey yok diye düşünüyorum... TStringlist; bazı özel durumlarda ki DivXTurk projesinde rastladığım bazı sayfalarda beni hayal kırıklığına uğrattı, bu linkleri #10#13 ENTER+Şaryo olmadığı halde satır sınırlamasından dolayı olduğunu değerlendirdiğim sebepten paragrafı böldüğüden kullanmaya son verdim...

- Yani önerim WordWrap özelliği disable edilmiş TRichEdit veya TMemo kullanıldığında link satırını tümüyle alacaktır... :idea:

- Gerisi kolay; zaten siz de yapıyorsunuzdur. Alınan satırı UPPERCASE edip karşılaştırmayı yaptırıp satırda bulunmuşsa, gerekli formatta yazlmış linki oraya Replace edilmesi şeklinde. (önce bulunan bloğu silip yerine karakter setinde olmayan bir işaret koymanızı öneririm. Ben genelde '|' işaretini veya '·' Asc(250) kullanıyorum) :D

- Sonra bu pozisyona gerekli düzenlemenin yapıldığı yazıyı INSERT edip, bu karakteri de Delete etmek yeterli olacaktır...

- :idea: Direkt tek satırda neden replace edilmediğini, araya özel karakterlerle işaret koyduğumu soracaksınız, benim için önemli bir ayrıntı; bazen sadece bir linki silmek yetmeyecek, ek olarak takip eden bir kaç html tag'ın da silinmesi gerekebilecektir...

- Silinecek blokları bitirdikten sonra yerleştirilecek linkin yeri koyduğumuz özel karakterin olduğu pozisyon... :idea:

- Vakit olursa size yukarda anlattığınız ışığında bir parse/replace fonksiyonu yazarım da... :wink:
Resim
Resim ....Resim
Cevapla