Reguljära uttryck i ASP.NET
Om du vill göra valideringar på servern kan man använda sig av reguljära uttryck.I ASP.NET finns det ett namespace som heter "System.Text.RegularExpressions".
Denna innhåller bland annat klassen regex. Följande exempel visar hur man kan
använda sig av reguljära uttryck för att validera att datumformatet är skrivna på rätt sätt.
Kontrollerar datumformat från år 2004 och framåt, som skall vara angivet med åååå-mm-dd
Imports System.Text.RegularExpressions Public Class regexp Inherits System.Web.UI.Page Private Sub Button1_Click(ByVal sender As System.Object,För att kontrollera datumformat angivet med ååmmdd från år 2004 och framåt,
ByVal e As System.EventArgs) Handles Button1.Click Dim sPattern As String sPattern = "^((20[0-9][0-9])-((((0[1-9])|(1[0-2]))-((0[1-9])|" & _
"(1\d)|(2[0-8]))|((0[13578])-31))|(((0[1,3-9])|" & _
"(1[0-2]))-(29|30))))$" Dim oRegExp As Regex = New Regex(sPattern) If oRegExp.IsMatch(txtStr.Text) Then Response.Write("<script>alert('Det ser bra ut.');</script>") Else Response.Write("<script>alert('formen ska vara ÅÅÅÅ-MM-DD');</script>") End If End Sub End Class
byts variablen sPattern ut till:
sPattern = "^((((0[4-9])|([1-9]\d))((((0[1-9])|(1[0-2]))((0[1-9])|" & _
"(1\d)|(2[0-8])))|((0[13578])31)|(((0[1,3-9])|" & _
"(1[0-2]))(29|30)))))$"
Om man vill att skottåren också kontrolleras kan detta uttryck användas.
Den kontrollerar både formatet ååmmdd och åååå-mm-dd, från år 2004 och framåt.
sPattern = "((^((((0[4-9])|([1-9]\d))((((0[1-9])|(1[0-2]))((0[1-9])|" & _
"(1\d)|(2[0-8])))|((0[13578])31)|(((0[1,3-9])|(1[0-2]))" & _
"(29|30)))))$)|(^((20[0-9][0-9])-((((0[1-9])|" & _
"(1[0-2]))-((0[1-9])|(1\d)|(2[0-8]))|((0[13578])-31))|" & _
"(((0[1,3-9])|(1[0-2]))-(29|30))))$)|" & _
"(^([2-9][0-9][2468][048])-(02)-(29)$)|"& _
"(^([2-9][0-9][0][48])-(02)-(29)$)|(^([13579][26])(02)(29)$)|" &_
"(^([2468][048])(0229)$)|(^([0][48])(0229)$))"