Yine MaxiASP'de bir üye arkadaşımızın sorduğu bir soru üzerine benimde kafama takılan bir konuyu çok sevdiğim RegEx ile çözüme kavuşturdum.
Sorulan soru ilk başta basit gibi gelmişti. Arkadaşımız "---" karakterlerini örnekleyerek yazı içindeki sadece bu karakterlerle belirtilmiş alanlarının gösterilmesini istiyordu. İlk düşündüğüm split yöntemiydi. Fakat tamamen sağlıklı olmayacaktı. Çünkü "---" karakterli ayraç birden fazla kullanılabilirdi. Bende bunu işten dönünce RegEx ile çözüme kavuşturdum.
Aşağıdaki kodlar ile deneme yaptığınızda çıktısı sadece "Ayberk Atasay Ayberk Atasay" olacaktır.
<%
Function Ndir(Text)
Set objReg = New RegEXP
objReg.Global = True
objReg.IgnoreCase = True
objReg.Pattern = "---s*(.+?)---"
Set YeniYazi = objReg.Execute(Text)
For Each x In YeniYazi
Result = Result & Replace(x,"---" ,"" )& "" & vbCrlf
Next
Ndir = Result
End Function
Veri = "---Ayberk Atasay--- ASP, CSS, Internet konuları üzerine paylaşımlar ---Ayberk Atasay--- ASP, CSS, Internet konuları üzerine paylaşımlar"
Response.Write Ndir(Veri)
%>