webForumDet fria alternativet

Fel i RegExp

ASP

0 svar · 144 visningar · startad av Brainbug

Medlem sedan sep. 200129 inlägg
Frågan#1

Tja!

Har denna function för att kolla formulär med:

Function ValidateForm(vPat, vStr, vErrCode)
	Dim objRegExp, Match, Matches
	Set objRegExp = New RegExp
	objRegExp.Pattern = vPat
	objRegExp.IgnoreCase = True
	objRegExp.Global = True
	Set Matches = objRegExp.Execute(vStr)
	For Each Match in Matches
		RetStr = RetStr & vErrCode
		RetStr = RetStr & "'" & Match.Value & "'<BR>"
	Next
	ValidateForm = RetStr
End Function

Problemet kommer när jag kör denna sträng: ValidateForm("\W", Username, "Ej tillåtet tecken ")

Tanken är att kolla ifall strängen innehåller andra tecken än A-Za-z0-9_ men ifall användarnamnet innhåller ett ej tillåtet tecken kommer detta felmeddelande:

Microsoft VBScript runtime error '800a000d' 

Type mismatch: '[string: "Otillåtet tecken: '-"]'

Alltså användarnamnet innehöll - (bindestreck)

När jag kollar andra inmatningar från formulär så funkar det perfekt men inte användarnamnet?!

Tacksam för alla svar.

/Andreas

259 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)