SQL Server’da Whitespace Gösteren Fonksiyon

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.

238 Kez Okundu

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 biriyim.

You may also like...

Yazı kopyalamak yasaktır!