Cek Validasi Email dan URL pake REGEX

Sebagai developer ada kalanya ketika membuat sebuah aplikasi, kita menemui hal dimana user menginput suatu isian yang harus sesuai dengan format yang telah ditentukan. Dalam pengecekan tersebut tidak cukup hanya dengan menggunakan client side checking seperti java script dan ajax MaskedEditExtender atau ajax ValidatorCalloutExtender sebab pengecekan tersebut tidak berfungsi ketika user mematikan java scipt pada browser. Oleh karena itu, kita juga harus melakukan pengecekan pada server side atau inside code. Kali ini saya akan membahas tentang pengecekan validasi alamat email dan URL menggunakan REGEX atau Regular Expression yang telah disediakan oleh Visual Studio. Berikut fungsi yang harus kita buat :

Code untuk cek validasi alamat email :

Public Class EmailValidation
 Public Function CekEmail(ByVal EmailAddress As String) As Boolean
 Dim rumus As String = "^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$"
 Dim EmailAddressMatch As Match = Regex.Match(EmailAddress, rumus)
 If EmailAddressMatch.Success = True Then
 CekEmail = True
 Else
 CekEmail = False
 End If
 Return CekEmail
 End Function
End Class

Berikut penggunaanya pada web form :

Dim EmailValidation As New EmailValidation
 If EmailValidation.CekEmail(Me.TbEmail.Text.Trim) = False Then
 Me.LbSaveStatus.ForeColor = Drawing.Color.White
 Me.LbSaveStatus.Text = "Email Address invalid"
 Me.TbEmail.BackColor = Drawing.Color.Red
 Me.TbEmail.Focus()
 Exit Sub
 Else
 Me.TbEmail.BackColor = Drawing.Color.White
End If

Code untuk cek validasi alamat URL :

Public Class URLValidation
 Public Function URLValidasi(ByVal URLAddress As String) As Boolean
 Dim rumus As String ="^(https?://)?(([\w!~*'().&=+$%-]+: )?[\w!~*'().&=+$%-]+@)?(([0-9]{1,3}\.){3}[0-9]{1,3}|([\w!~*'()-]+\.)*([\w^-][\w-]{0,61})?[\w]\.[a-z]{2,6})(:[0-9]{1,4})?((/*)|(/+[\w!~*'().;?:@&=+$,%#-]+)+/*)$"
 Dim URLAddressMatch As Match = Regex.Match(URLAddress, rumus)
 If URLAddressMatch.Success = True Then
 URLValidasi = True
 Else
 URLValidasi = False
 End If
 Return URLValidasi
 End Function
End Class

Berikut penggunaanya pada web form :

Dim URLValidation As New URLValidation
 If URLValidation.URLValidasi(Me.TbHomePage.Text.Trim) = False Then
 Me.LbSaveStatus.ForeColor = Drawing.Color.White
 Me.LbSaveStatus.Text = "HomePage Address invalid"
 Me.TbHomePage.BackColor = Drawing.Color.Red
 Me.TbHomePage.Focus()
 Exit Sub
 Else
 Me.TbHomePage.BackColor = Drawing.Color.White
End If

10 Komentar (+add yours?)

  1. angel
    Mar 19, 2009 @ 15:05:27

    hello mbak..

    aku tertarik sama tema regex yg mbak tulis..

    tapi aku boleh minta screen capture-nya gak kayak gmna klo di visual studio..
    klo gak keberatan email aq di yofiel.an@gmail.com yupzz

    thank u..
    angel ^^

    Balas

  2. ayusa
    Mar 19, 2009 @ 15:58:43

    screen capture yang seperti apa mbak’e??? kalau di visual basic ya sama aja mbak kayak kita bikin di php. apa web formnya? yah kalau di form c prinsipnya cuman ada inputan (textbox), button, sama label aja.

    trima kasih sudah berkunjung🙂

    Balas

  3. angel
    Mar 20, 2009 @ 12:32:19

    Siang mbak

    ada contoh demo program-nya gak?
    Aku cuma pengen tau aja,..
    n tertarik sama tema yg mbak posting ^^

    Balas

  4. angel
    Mar 21, 2009 @ 18:21:35

    okeh di gmail aja ya mbak
    ni alamat email aq yofiel.an@gmail.com

    email yang diatas email adek-aku..

    trim’s banget ya mbak ^^

    Balas

  5. Ahn
    Jun 16, 2009 @ 10:31:20

    Thanks for the info….🙂

    Balas

  6. radof
    Jul 31, 2009 @ 07:58:45

    mbak, gmn cara penggunaannya sih? tolong kasih tahu caranya yg detail dun, lg butuh bgt nih saya..

    Balas

  7. Fauzi
    Sep 22, 2010 @ 20:59:10

    Klo dengan Bahasa Java Gimana ya..
    Klo tau resourcennya Tolong ya Share kesini heaven_orange1928@yahoo.co.id
    THRIMAKASIH

    Balas

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: