Avatar billede Slettet bruger
04. april 2004 - 12:22 Der er 7 kommentarer og
1 løsning

Replace i streng

Hej... Jeg har et javascript jeg skal hive noget tekst ud fra og poste det med AspHTTP.

Koden i javascriptet er ganske simpelt:

document.write("Overskrift");
document.write("<br><br>");
document.write("Her står en tekst.");

Det jeg ønsker at koden barberes for alle javascript koderne 'document.write("' og '");' så der kun er den rene tekst tilbage lige til at poste på min side - hvordan laver jeg en sådan replace?
Avatar billede -master-d- Nybegynder
04. april 2004 - 14:42 #1
Jeg fandt lige en gammel funktion som jeg havde liggende. Den var oprindelig beregnet til at finde en token ([%Token%]), og dermed tage teksten mellem "[%" og "%]". Den har jeg så lige omprogrammeret til dit behov.

Den ser sådan her ud:

<%
Function FjerneDocumentWrite(tekst)
dim l_ia, l_ib, l_sLine, l_sLine2, l_sToken
l_ia = instr(, "document.write(""")
    if l_ia > 0 then
        l_sLine = left(tekst, l_ia - 1)
        l_ib = instr(l_ia,tekst, """)")
        l_sLine2 = mid(tekst, l_ia, CLng(l_ia+15+l_ib+2))
        FjerneDocumentWrite(l_sLine2)
    else
        Response.Write(tekst & VbCrLf)
    end if
end Function
%>

Så det du gør er:

<%
tekst = "document.write(""Overskrift"");"
FjerneDocumentWrite(tekst)
%>

Så skulle dit output gerne være "Overskrift".. sig til hvis den ikke virker.
Avatar billede Slettet bruger
04. april 2004 - 15:06 #2
Det gør det ikke. Får "Type mismatch" i linien: l_ia = instr(, "document.write(""")
Avatar billede -master-d- Nybegynder
04. april 2004 - 15:23 #3
Der skal stå: l_ia = instr(tekst, "document.write(""")
Avatar billede Slettet bruger
04. april 2004 - 17:20 #4
Får: Out of stack space: 'FjerneDocumentWrite'

i linien

FjerneDocumentWrite(l_sLine2)
Avatar billede nozio Nybegynder
04. april 2004 - 20:09 #5
Hvorfor ikke bare bruge:

tekst = "document.write(""Overskrift"");"
tekst = Replace(tekst,"document.write(""","")
tekst = Replace(tekst,""");","")


Response.write(tekst)

- hurtigt og 'grimt'
Avatar billede -master-d- Nybegynder
04. april 2004 - 21:26 #6
nozio >> det er rigtigt nok at du kan bruge de første 2 linier, men den tredje holder ikke hvis du har et funktionskald eller noget at som indeholder ").
Avatar billede Slettet bruger
05. april 2004 - 08:20 #7
nozio > det gør hvad det skal, det kode der - den tager jeg, grimt eller ej :-)

Svar venligst. Tak for hjælpen til jer begge.
Avatar billede nozio Nybegynder
05. april 2004 - 08:23 #8
ok - herligt ..
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