Avatar billede lightbrain Nybegynder
02. juli 2002 - 18:36 Der er 10 kommentarer og
2 løsninger

Replace-funktion

Hej

Jeg har brug for en funktion, som skal blive kørt hver gang, at jeg henter info. fra databasen, hvori der findes specielle tegn såsom "-tegnet og '-tegnet + nogle få andre.

Jeg havde tænkt mig at lave og anvende en replace-funktion på titel, forfatter og beskrivelse (som indeholder omtalte tegn).

UDKAST:

response.write "gruppe[1][" & i & "]=new artikel (" & rs("artikelnr") & "," & ReplaceMy(rs("titel")) & "," & ReplaceMy(rs("forfatter")) & ", " & ReplaceMy(rs("beskrivelse")) & ", " & rs("filnavn") & ", " & rs("emnenr") & ", " & rs("niveau") & ");"

function ReplaceMy (replaceStr)

replaceStr = Replace(replaceStr,"&quot"," "-tegnet ")
replaceStr = Replace(replaceStr,"????"," '-tegnet ")

end function
Avatar billede psyclown Nybegynder
02. juli 2002 - 18:54 #1
nu ved jeg ikke om jeg har forstået rigtigt, men skal du bruge en funktion der skal replace nogle specieltegn?

tror denne virker:

    Function IsValidString(sValidate)

        Dim sInvalidChars
        Dim bTemp
        Dim i
        ' Disallowed characters
        sInvalidChars = "»´`~¨-_¤@£$½§!#$%^&*()=+{}[]|\;:/?>,<æøåÆØÅ1234567890"
        For i = 1 To Len(sInvalidChars)
            If InStr(sValidate, Mid(sInvalidChars, i, 1)) > 0 _
                Then bTemp = True
            If bTemp Then Exit For
        Next
       
    For i = 1 To Len(sValidate)
            If Asc(Mid(sValidate, i, 1)) = 160 _
        Then bTemp = True
      If bTemp Then Exit For
    Next
        IsValidString = Not bTemp
    End Function
Avatar billede lightbrain Nybegynder
02. juli 2002 - 20:44 #2
Det var ikke det, som jeg søgte. Kan du ikke færdiggøre mit udkast til funktionen?
Avatar billede psyclown Nybegynder
02. juli 2002 - 20:48 #3
hvad er det lige du mener ?
Avatar billede lightbrain Nybegynder
02. juli 2002 - 20:58 #4
Når jeg henter objeker fra databasen, som skal indsættes i et array, bliver "-tegnet (automatisk af browseren) omdannet til &quot for at browseren ikke skal mistolke det som kode.

1) Derfor vil jeg bruge Replace(replaceStr,"&quot"," "????") til at genskabe "-tegnet, men jeg ved ikke rigtigt, hvad der skal stå i stedet for ????, fordi Replace(replaceStr,"&quot"," """) ville sikkert skabe fejl.

2) Alle objekterne som hentes fra databasen, skal smides ind i en sådan replace-funktion (se evt. mit udkast), hvor &quot bliver omdannet/genskabt til ". Når det virker, vil jeg udbygge funktionen til også at kunne gendanne '-tegnet og sikkert også andre tegn.
Avatar billede psyclown Nybegynder
02. juli 2002 - 21:07 #5
Den anden function jeg skrev der oppe, er ikke lige hvad den jeg den var til, tror sq lige jeg sov da jeg copy/pastede den ind :)

du kan lave en funktion på følgende måde:

function omdan(fString)
    fString = replace(fString, &quot, """)
        'osv.
    istedet = fString
end function

Du skriver at den SIKKERT vil give fejl hvis du prøver at replace &quot med ", men der er jo ikke andet for end at prøve, jeg har ikke selv prøvet, så derfor ved jeg ikke om der kommer fejl.

Håber det er noget du kan bruge denne gang
Avatar billede psyclown Nybegynder
02. juli 2002 - 21:07 #6
lige en lille fejl:

function omdan(fString)
    fString = replace(fString, &quot, """)
        'osv.
    omdan = fString
end function
Avatar billede lightbrain Nybegynder
02. juli 2002 - 21:17 #7
>...men der er jo ikke andet for end at prøve

Unterminated string constant

function omdan(fString)
    fString = replace(fString, "&quot", """)
        'osv.
    omdan = fString
end function
Avatar billede psyclown Nybegynder
02. juli 2002 - 21:19 #8
har du prøvet med fString = replace(fString, "&quot", """"), altså med 2 "" ?
Avatar billede lightbrain Nybegynder
02. juli 2002 - 21:27 #9
function omdan(fString)
    fString = replace(fString, "&quot", """")
        'osv.
    omdan = fString
end function

Jeg har kun anvendt "omdan" på "titel" - resten må vente indtil det virker. Fejl: Den tolker gåseøjene i database som kode.

response.write "gruppe[1][" & i & "]=new artikel (" & rs("artikelnr") & "," & omdan(rs & ("titel")) & ",""" & rs("forfatter") & """, """ & rs("beskrivelse") & """, " & rs("filnavn") & ", " & rs("emnenr") & ", " & rs("niveau") & ");"
Avatar billede psyclown Nybegynder
02. juli 2002 - 21:29 #10
Jeg kan desværre ikke huske hvad det man skal når man vil replace ", jeg har prøvet det, men kan ikke huske det...
Avatar billede lightbrain Nybegynder
02. juli 2002 - 21:40 #11
Jeg kom lidt videre - det vil jeg give 5 points for.
Avatar billede psyclown Nybegynder
02. juli 2002 - 21:42 #12
håber du finder ud af det :)
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