Avatar billede mccannon Nybegynder
04. juni 2002 - 14:10 Der er 14 kommentarer og
2 løsninger

Function til at tjekke for specdial tegn

hejsa

Jeg skal bruge en funktion til at tjekke om et brugernavn bruger special tegn, så som &!?.. osv

nogle som har noget liggende ?
Avatar billede dk_akj Nybegynder
04. juni 2002 - 14:26 #1
du kan bruge instr funktionen.

//akj
Avatar billede tmceu Praktikant
04. juni 2002 - 14:28 #2
En meget simpel funktion kunne være

Function Test(strIn)
' specialtegn du leder efter
myArr = Split("&,!,#,~", ",")

For i = 0 To UBound(myArr)
  If InStr(strIn, myArr(i)) Then
  strTemp = strTemp & myArr(i) "fundet! "
  End If
Next

Test = strTemp
End Function
Avatar billede dk_akj Nybegynder
04. juni 2002 - 14:29 #3
F.eks

If instr(username,"&") > 0 then
  ' der er fundet et "&"
end if

If instr(username,"/") > 0 then
  ' der er fundet et "/"
end if

ref:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctinstr.asp
Avatar billede mccannon Nybegynder
04. juni 2002 - 14:35 #4
hej igen

er vel ikek ngoen som lige skulle ha en list over special tegn ? :)
Avatar billede dk_akj Nybegynder
04. juni 2002 - 14:39 #5
Jo... ned med shift og en tur rundt på klaveret :o)

eller
http://www.google.com/search?hl=en&ie=UTF8&oe=UTF8&q=specialtegn+liste
Avatar billede eagleeye Praktikant
04. juni 2002 - 14:44 #6
Alternativt kan du kaste dig ud i lidt Regular Expressions eks:

Set regEx = New RegExp
‘søg efter ? ‘ %      som ikke er tilladt
regEx.Pattern = “[\?\’\^\*\%]”
regEx.IgnoreCase = False

inStr = “ghg%huh”
retVal = regEx.Test(inStr)

' Execute the search test.
If retVal Then
  Response.write "ulovligt tegn fundet."
Else
  Response.write "streng OK"
End If
Set regEx = Nothing

Prøv evt:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnclinic/html/scripting051099.asp
Avatar billede mccannon Nybegynder
04. juni 2002 - 15:02 #7
hmm virker ikke helt som jeg vil had det til det...

Microsoft VBScript runtime error '800a01c2'

Wrong number of arguments or invalid property assignment: 'Test'



Function Test(Brugernavn)
' specialtegn du leder efter
myArr = Split("&amp;,!,#,~,¤,%,/,(,),=,?,´,`,@,£,$,€,{,[,],},+,|,¨,^,*,.,;,:,-,_,<,>,\", ",")
   
For i = 0 To UBound(myArr)

If InStr(Brugernavn,myArr(i)) Then
strTemp = strTemp & myArr(i) & "fundet!"
End If
       
Next
Test = strTemp
End Function



If Brugernavn <> "" then
  Test(Brugernavn)
    If Test <> "" then
    Response.Write test
    end if
       
End if
Avatar billede dk_akj Nybegynder
04. juni 2002 - 15:07 #8
If Brugernavn <> "" then
  If Test(Brugernavn) <> "" then
    Response.Write test
    end if
       
End if
Avatar billede mccannon Nybegynder
04. juni 2002 - 15:14 #9
stasdig samme fejl :(
Avatar billede dk_akj Nybegynder
04. juni 2002 - 15:18 #10
Har du et linienummer den fejler i ??
Avatar billede eagleeye Praktikant
04. juni 2002 - 15:18 #11
Du bruger en test som variable og function det går ikke:
If Brugernavn <> "" then
  strTest = Test(Brugernavn)
  If strTest <> "" then
    Response.Write strTest
    end if     
End if
Avatar billede mccannon Nybegynder
04. juni 2002 - 15:26 #12
nu har jeg et problem

jeg bruger tmcceu's løsning, eagle rettede den til..hvem skal så have pointsne ??

sorry dk, din løsning hvirker vist beste hvis det kun er et enkelt elelr ihvertfal få tegn man tjekker for
Avatar billede dk_akj Nybegynder
04. juni 2002 - 15:29 #13
Du vælger bare avanceret og deler points.

//akj
Avatar billede tmceu Praktikant
04. juni 2002 - 15:30 #14
Hvis du fordeler som du synes, er det ok med mig. Du er spørgeren og det er din suveræne ret at fordele :-)
Avatar billede eagleeye Praktikant
04. juni 2002 - 15:31 #15
Du kan jo dele de points mellem os:
y til eagleeye
x til tmceu
z til dk_akj

Eller hvordan du syntes det skal deles.
Avatar billede mccannon Nybegynder
04. juni 2002 - 15:32 #16
there u go..:)
og takker for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester