İleri Seviye SQL Server Sql Server

SQL Server’da Whitespace Gösteren Fonksiyon

SQL Server Eğitimleri Kanalına Abone Olun

Herkese merhaba,

Bu yazıda SQL Server’da whitespace gösteren fonksiyon hakkında bilgi vermeye çalışacağım.

SQL Server’da bazı durumlarda whitespace tespiti yapma ihtiyacı olabilir.

İlk olarak whitespace nedir onu öğrenelim. Whitespace ifadesi Türkçe’de beyaz boşluk olarak çevrilebilir. Anlamı da sanılanın aksine sadece space karakteri kullanılarak elde edilen boşluk değil; aynı zamanda escape karakterler ile elde edilen \n ve \t boşlukları da birer whitespace’tir.

Aşağıdaki fonksiyonu kullanarak siz de bu işlemi rahatlıkla yapabilirsiniz.

CREATE FUNCTION dbo.fn_WhiteSpace_Goster
(
    @Yazi VARCHAR(8000)
)
RETURNS VARCHAR(8000)
AS
BEGIN
    DECLARE @WhiteSpaceGoster VARCHAR(8000);
    SET @WhiteSpaceGoster = @Yazi;
    SET @WhiteSpaceGoster = REPLACE(@WhiteSpaceGoster, CHAR(32), '[?]');
    SET @WhiteSpaceGoster = REPLACE(@WhiteSpaceGoster, CHAR(13), '[CR]');
    SET @WhiteSpaceGoster = REPLACE(@WhiteSpaceGoster, CHAR(10), '[LF]');
    SET @WhiteSpaceGoster = REPLACE(@WhiteSpaceGoster, CHAR(9), '[TAB]');
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(1),  '[SOH]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(2),  '[STX]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(3),  '[ETX]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(4),  '[EOT]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(5),  '[ENQ]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(6),  '[ACK]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(7),  '[BEL]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(8),  '[BS]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(11), '[VT]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(12), '[FF]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(14), '[SO]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(15), '[SI]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(16), '[DLE]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(17), '[DC1]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(18), '[DC2]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(19), '[DC3]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(20), '[DC4]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(21), '[NAK]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(22), '[SYN]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(23), '[ETB]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(24), '[CAN]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(25), '[EM]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(26), '[SUB]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(27), '[ESC]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(28), '[FS]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(29), '[GS]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(30), '[RS]')
    --   SET @WhiteSpaceGoster = REPLACE( @WhiteSpaceGoster, CHAR(31), '[US]')
    RETURN (@WhiteSpaceGoster);
END;

--Kullanımı

SELECT dbo.ShowWhiteSpace('Yavuz	')

Fonksiyonu oluşturup yukarıdaki kodu çalıştırdığınızda aşağıdaki sonucu göreceksiniz.

SQL Server'da Whitespace Gösteren Fonksiyon

Burada TAB tuşuna basmıştım. TAB tuşuna bastığımı fonksiyon bana göstermiş oldu.

Görüldüğü üzere whitespace tespitini yapmış olduk.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

40 Kez Okundu
SQL Server Eğitimleri Kanalına Abone Olun

Yazar hakkında

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli birisiyim.

Kopyalamak Yasaktır!