Etiket arşivi: regular expression numeric control

Regular Expression ile Sayı Kontrolü

Regular Expression ile Sayı Kontrolü

Geçen gün bir yazılımcı arkadaşımın böyle bir ihtiyacı oldu, concat edilerek üretilmiş bir referans alandaki metin değerlerini elde etmemiz gerekiyordu. Stringdeki numerik değerleri temizlemek istiyoruz, bunun için plsql regular expression ve plsql replace fonksiyonu kullanacağız.

Regular expression ile numerik alanların kontrolü:

SELECT (REGEXP_REPLACE('abcd12345ew rwer', '[0-9]')) FROM DUAL;
abcdew rwer

SELECT (REGEXP_REPLACE(kolon_adi, '[0-9]')) FROM tablo;

REPLACE fonksiyonu ile numerik alanların kontrolü:

Aynı işlemi plsql replace fonksiyonu ile de yapabilirdik,ama biraz daha uzunca ve zahmetli.
Bu sebeple regular expression kullanmak daha mantıklı ve regular expression daha esnek bir yapıya sahip.

SELECT REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE
('abcd12345ew rwer',0,NULL),1,NULL),2,NULL),3,NULL),4,NULL),5,NULL),6,NULL),7,NULL),8,NULL),9,NULL) FROM DUAL;

abcdew rwer

 

Umarım faydalı olur.