Alfabetik Sıralama :ABCDEFGHIJKLMNOPQRSTUVWXYZ -


HTML de bolca kullandığımız tabloların "width" diye bir parametresi vardır.Genişliği belirler.Fakat genişlik verilen tabloda kelimeler arası boşluk yoksa bu width değerine aldırmaksızın tablo genişler ona bağlı diğer tasarım öğeleride konum değiştirir.

_______________
|                     |
|______________|  Bu tabloya width="100" değeri verildiğini düşünelim şayet içerisine normal kelimeler yazdığımız vakit sadece aşağı doğru itileme eyilimine gidecektir
_______________
| findikkurdu     |
| sitesine hoş   |
| geldiniz...       |
|______________|  yan yana sığabilen kelimeler sığacak diğerleri aşağı itilecektir.Bu normal olası ve olması gereken durumdur.Ancak bu yazıyı şayet biz yazdı isek duruma müdahale etmemiz kolay.Peki kullanıcı yorumu / yazısı gibi sitede yayınladığımız alanlarda bahsettiğimiz olay gelişirse? çünkü kendi insiyatifimizde olmayan bir durumdur.
______________________________________________________________________________________
| sizleriçokseeeeeeeeeevvvvvvvvvvvvvviiiiiiiiiiiiiiiiiiiiiiiiiyyyyyyyyyyyyyyoooooooooorrrrrruuuzz!..   |
|_____________________________________________________________________________________|  gibi bir kullanıcı yorumuna yazısına kullanığımız tablomuz genişliği 100px olmasına rağmen genişleyecektir ve tasarımı bozacaktır.İşte bu durumlar için
kelimeyi parçalayacak hali hazırda bir sisteme ihtiyaç duyarız.

<%  
Sub UzunCumle(strVeri,karakterMiktari)  

karakter_uzunlugu = karakterMiktari

kelimeler =
Split(strVeri)  

For i = 0 To Ubound(kelimeler)  
    
If Len(kelimeler(i)) > karakter_uzunlugu Then  

               kac_parca =
Len(Kelimeler(i)) / karakter_uzunlugu  

          
For j = 1 To CInt(kac_parca)  
                
              
If Len(kelimeler(i)) > karakter_uzunlugu Then  

            
                    strKelimeParcalari =
Mid(kelimeler(i),1,karakter_uzunlugu)  

                    fark =
Len(kelimeler(i)) - karakter_uzunlugu  
                          kelimeler
(i) = Right(kelimeler(i),CInt(fark))  
                              
Response.Write strKelimeParcalari & " "   
              
End If  
          
Next  
          
Response.Write kelimeler(i)&" "   
    
Else  

          
Response.Write (kelimeler(i))&" "   

    
End If  
Next  

End Sub  

cumle =
"şimdi bu bir kadirdoganmaxiaspkarakterbolmeversionbirnokt  
aikidegisikasdljasdlkjasldkjaslkjasdlkajslkdajsd  
lkasjdlkasjdlkasjdlkaoıuhaklhfkajhfkjashfkjashfk  
jahskjdhaskjdhakjhdkaliklazimbunasonrotusden  
emetamikikatiolduğundavetastigindadaaynisonu  
cudonduruyor olsa sonuç olarak ne dönecek"
  

UzunCume
(cumle)  
%>  

Şimdi alt yordamımız 2 adet parametre almaktadır birisi uzuuuuuuuun şekilde yazılan string yapıyı ve bu uzun şekilde gönderilmiş stringi kaçarlık dilimlere bölceğimizi belirten karakterMiktarı.

Değerleri alt yordama gönderdikten sonra yapılan ilk işlem gelen string yapıyı boşluklara göre bölmek

kelimeler = Split(strVeri)  

kelimeleri boşluklara göre bölmek demek tek tek string içerisindeki kelimeleri elde etmek demek.Ve daha sonraki işlem bu oluşan kelime kadar yapı içerisinde dönmek ve tek tek kelimelerin istenilen uzunlukta olup olmadığını kontrol etmek

For i = 0 To Ubound(kelimeler)  
    
If Len(kelimeler(i)) > karakter_uzunlugu Then  

.Şayet kelimenin karakter sayısı parametre olarak gönderilen karakter_uzunlugundan büyükse asıl işlemimiz olan kesme biçme başlayacaktır.değilse kelime aynen response.write ile basılacaktır ekrana.

kac_parca = Len(Kelimeler(i)) / karakter_uzunlugu  

kac_parca değişkenimiz istenilen uzunluktan ne kadar fazlalığı var onu tesbit etmek için kullandığımız ara değişkendir.
örneğin sizleriçokseeeeeeeeeevvvvvvvvvvvvvviiiiiiiiiiiiiiiiiiiiiiiiiyyyyyyyyyyyyyyoooooooooorrrrrruuuzz!.. 98 karakterdir.Bu kelime eğer 25 karakterlik dilimlere bölünmek istenmişse

98/25 = 3.92 onunda Cint değerini aldığımız için 4 elde edilecektir.

elde ettiğimiz değer bu uzun kelime için kaç defa bölme işlemi yapacağımızı bildiren sayıdır.o nedenle bu değer kadar ikinci bir for döngüsü kuruyoruz  

For j = 1 To CInt(kac_parca)  
                
              
If Len(kelimeler(i)) > karakter_uzunlugu Then  

Ve bu sefer kelime için her bir seferinde 25 ten büyükmü diye kontrol ediyoruz.Bunun nedeni ise her zaman 25 in katları şeklinde bölüm sonrası karakter kalmayacaktır.Örneğimizde 3 sefer 25 karakter bölümleme yaparken en son parça için 23 karakter kalmaktadır.

strKelimeParcalari = Mid(kelimeler(i),1,karakter_uzunlugu)  

                    fark =
Len(kelimeler(i)) - karakter_uzunlugu  
                          kelimeler
(i) = Right(kelimeler(i),CInt(fark))  
                              
Response.Write strKelimeParcalari & " "   

Asıl işlevi üstlenen bu kodlar ise kelimeden 25 karateri çıkartır ve çıkartılan karakter dizesinide tekrar o stringten eksiltir.Ve böylelikle sonuç olarak

sizleriçokseeeeeeeeeevvvv vvvvvvvvvviiiiiiiiiiiiiii iiiiiiiiiiyyyyyyyyyyyyyyo ooooooooorrrrrruuuzz!..  gibi aralarında birer boşluk olan ve sığmadığı taktirde tablodan aşağıya itilebilekcek kelimeler elde etmiş oluruz.



Ve işte bu kadar yazıdan sonra :) canlı kanlı örneğimiz bizzat bu site.Bakın kenarlara nasılda genişledi.Yani aslında bunu engelledik ama yazıda örnek maksatlı bir seferliğine böyle bıraktık :) .Terzi kendi söküğünü dikemezmiş



Konu: ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme
 
Okunma Sayısı : 139
Eklenme Tarihi : 31 Ocak 2007, Çarşamba
SONRAKI BILGI : PHP De Dizileri sıralama   
Forum Linki:
Aranan Kelime:
 

En Yeni Bilgiler


 ISS PWS DB`Ye Yazma Okuma izni verme ISS PWS DB`Ye Yazma Okuma izni verme
 FSO ile Upload FSO ile Upload
 Rastgele şifre üretmek Rastgele şifre üretmek
 ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme
 ASP ile Base64 Şifreleme ASP ile Base64 Şifreleme
 ASP ile Base64 Şifre Çözme ASP ile Base64 Şifre Çözme
 Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme
 Mailleri bölerek göndermek Mailleri bölerek göndermek
 Türkçe karakterleri ingilizce karşılıklarına çevirmek Türkçe karakterleri ingilizce karşılıklarına çevirmek
 Hata sayfası(404) ile link yönetimi Hata sayfası(404) ile link yönetimi
 Mail okundu bilgisi Mail okundu bilgisi
 Online üyeler Online üyeler
 Önceki sonraki linki Önceki sonraki linki
 ASP ile Web Programcılığı ASP ile Web Programcılığı
 ASP de diziler , dizi değişkenler ASP de diziler , dizi değişkenler
 ASP - Operatörler ASP - Operatörler
 ASP ile MySQL verilerini sayfalama ASP ile MySQL verilerini sayfalama
 ASP ile MS Access verilerini sayfalama ASP ile MS Access verilerini sayfalama
 ADO - Giriş (Bölüm 1 ADO - Giriş (Bölüm 1
 ADO - Connection (Bölüm 2) ADO - Connection (Bölüm 2)
 ASP ile Online Radyo Hizmetine Giriş ASP ile Online Radyo Hizmetine Giriş
 ASP dosyalarını DLL´ye çevirme ASP dosyalarını DLL´ye çevirme
 HTTP 500.100 hatalarına hükmedin HTTP 500.100 hatalarına hükmedin
 ASP ve VBScript nedir? ASP ve VBScript nedir?
 VBScriptte Veri Tipleri VBScriptte Veri Tipleri
 VBScriptte değişkenler ve sabitler VBScriptte değişkenler ve sabitler
 VBScriptte Dictionary Nesnesi VBScriptte Dictionary Nesnesi
 Regular Expressions (Düzenli İfadeler) Regular Expressions (Düzenli İfadeler)
 Şartlı ifadeler Şartlı ifadeler
 Persist Bileşeni ile Email formu Persist Bileşeni ile Email formu
 Vertabanından 2-3-4`erli sıralama Vertabanından 2-3-4`erli sıralama
 Arama Motoru yapmak Arama Motoru yapmak
 Jmail bileşeni ile mail formu Jmail bileşeni ile mail formu
 ASP`ye giriş ASP`ye giriş
 Değiskenler Değiskenler
 ASP başlangıç ASP başlangıç
 Arama Motoru Arama Motoru
 Form bilgileri Form bilgileri
 Veritabanı, kayıt ve silme işlemleri Veritabanı, kayıt ve silme işlemleri
 Veritabanına bağlanmak ve veri almak Veritabanına bağlanmak ve veri almak
 Veritabanı oluşturma Veritabanı oluşturma
 Querystring Querystring
 Mailllist yapımı Mailllist yapımı
 Kayıtları Sayfalara bölmek Kayıtları Sayfalara bölmek
 Sub kullanımı Sub kullanımı
 Ziyaretçi`nin IP Numarasını almak Ziyaretçi`nin IP Numarasını almak
 Sayfaya şifre koymak Sayfaya şifre koymak
 Online kişi sayısı Online kişi sayısı
 Kategorili Sistem Kategorili Sistem
 Tarihler arası veri seçtirmek. Tarihler arası veri seçtirmek.
 GET Yöntemi ile İşlemler GET Yöntemi ile İşlemler
 POST Yöntemi ıle ışlemler POST Yöntemi ıle ışlemler
 ASP`de Güvenlik Önlemleri ASP`de Güvenlik Önlemleri
 Cdonts ile mail formu Cdonts ile mail formu
 FSO ile log tutmak FSO ile log tutmak
 ASPUpload bileşeni ASPUpload bileşeni
 Sunucu Değişkenleri Sunucu Değişkenleri
 Alışveriş ve Sepet Yapımı Alışveriş ve Sepet Yapımı
 Flood koruması Flood koruması
 Sayfaları şifreleme(ENCODE) Sayfaları şifreleme(ENCODE)
 SPLIT Kullanımı SPLIT Kullanımı
 YTL Güncellemesi YTL Güncellemesi
 Tarih ve Saat Fonksiyonları Tarih ve Saat Fonksiyonları
 Döngüler Döngüler
 XMLHTTP XMLHTTP
 NTVMSNBC.COM Haberleri NTVMSNBC.COM Haberleri
 IIS Ayarları 2 IIS Ayarları 2
 ASP Tear ASP Tear
 Rastgele Veri Rastgele Veri
 ASP Jpeg ASP Jpeg
 SQL Komutları SQL Komutları
 Array Nesnesi Array Nesnesi
 If...else ıfadesi If...else ıfadesi
 Tavsiyet Et Tavsiyet Et
 Birden Fazla Alanadı Desteği Birden Fazla Alanadı Desteği
 Online Üyeler Online Üyeler
 Güvenlik Kodu Güvenlik Kodu
 MS SQL Server - 2 MS SQL Server - 2
 MS SQL Server - 1 MS SQL Server - 1
 MS SQL Server - 3 MS SQL Server - 3
 XMLHTTP ile döviz Kurları XMLHTTP ile döviz Kurları
 TL`yi YTL olarak Yazdırmak TL`yi YTL olarak Yazdırmak
 YTL`yi TL olarak Yazdırmak, YTL`yi TL olarak Yazdırmak,
 Dönüşümlü Banner Sistemi Dönüşümlü Banner Sistemi
 IP Filtresi IP Filtresi
 MySmartUpload Bileşeni MySmartUpload Bileşeni
 SQL İle İşlemler SQL İle İşlemler
 Cookie(Çerez) Kullanımı Cookie(Çerez) Kullanımı
 ASP ile Mail gönderme. ASP ile Mail gönderme.
 SQL - Yapısal Sorgu Dili 1 SQL - Yapısal Sorgu Dili 1
 MS SQL Server - 4 MS SQL Server - 4
 Klasör Şeklinde Linkler(404 Yönetimi) Klasör Şeklinde Linkler(404 Yönetimi)
 Http`leri Link Yapmak Http`leri Link Yapmak
 Cookie`s (Çerezler) Cookie`s (Çerezler)
 Renkli Tablolar Renkli Tablolar
 Windows XP`de SMTP Kurulumu Windows XP`de SMTP Kurulumu
 Err Nesnesi Kullanımı Err Nesnesi Kullanımı
 MS SQL Server - 5 MS SQL Server - 5
 Daha Performanslı Kodlar Daha Performanslı Kodlar
 Jmail ile Şifreleme Jmail ile Şifreleme
 Karakter Temizleme Karakter Temizleme
 Sınırsız Kategori Sistemi Sınırsız Kategori Sistemi
 Makale Sayfalama Makale Sayfalama
 IIS Kurulumu ve Yazma İzni IIS Kurulumu ve Yazma İzni
 Geçen Zaman Gösterimi Geçen Zaman Gösterimi
 Include Yöntemleri Include Yöntemleri
 E-Mail adresi kontrolü E-Mail adresi kontrolü
 Açılır Kutu(DropDown) yapımı Açılır Kutu(DropDown) yapımı
 FSO ile Listeleme FSO ile Listeleme
 Tarih Format`ı Tarih Format`ı
 XmlHTTP Türkçe Karakter Problemi XmlHTTP Türkçe Karakter Problemi
 Bileşen Kurulumu Bileşen Kurulumu
 Stored Procedure - MSSQL Stored Procedure - MSSQL
 Ntvmsnbc Haberleri (XmlHTTP) Ntvmsnbc Haberleri (XmlHTTP)
 Tarih Biçimleri Tarih Biçimleri
 Stored Procedure Değişkenler Stored Procedure Değişkenler
 Fonksiyon(Function) Kullanımı Fonksiyon(Function) Kullanımı
 Tablolu Yanyana Sıralama Tablolu Yanyana Sıralama
 Puan sistemi Puan sistemi
 Access`ten MSSQL`e Access`ten MSSQL`e
 SQL Distinct Kullanımı SQL Distinct Kullanımı
 Değer Fonksiyonları Değer Fonksiyonları
 Türkçe karakter kontrol Türkçe karakter kontrol
 ASP Class(Sınıf) Kullanımı ASP Class(Sınıf) Kullanımı
 Üyelik Sistemi Yapımı Üyelik Sistemi Yapımı
 IIS Şifresi Koymak IIS Şifresi Koymak
 Operatörler: Operatörler:
 RSS Sayfası Yapımı RSS Sayfası Yapımı
 Veritabanı Tablo İşlemleri Veritabanı Tablo İşlemleri
 

 

 

Copyright © 2008 Temha.neT