02. april 2005 - 17:30Der er
37 kommentarer og 1 løsning
Slette headings?
Hej alle
Jeg har følgende script, som jeg skal have til at slette heading1-tagget (og alt hvad der står i det), men det virker ikke, da den intet sletter.
Function StripHeadings (ByRef asHTML) Set regEx = New RegExp regEx.IgnoreCase = True regEx.Global = True regEx.Pattern = "(<h1[^<]+<\/h1>)" StripHeadings = regEx.Replace(asHTML, "") Set regEx = Nothing End Function
Kan du hjælpe mig med at få det til at virke samt udbygge det til, at det sletter alle headings (og ikke kun heading1)? Altså H1, H2, H3 osv., hvordan gør jeg det på en smart måde / i samme funktion?
Og / er ikke spor magisk i regulære udtryk, derfor skal der ikke \ foran. Det er kun når det regulære udtryk i visse sprog er omgivet af /..../ at man skal gøre det.
Og <h1[^<]+</h1> virker jo ikke når der er andre tags end lige <h1> og </h1> i linien, da [^<] stopper ved det først forekommende < - og så matcher det jo ikke.
-- nej, nej, en skråstreg er bare en skråstreg, men jeg spurgte mere til, om en escaping af noget kunne skade nogen steder, for det gør det mig bekendt ikke i de sprog jeg har fat i det i !-)
-- hvad har du gjort anderledes fra de første udgaver, så det nu virker ?-)
Takker, jeg kan dog ikke lige pt. om det virker, da jeg er kommet til at pille ved min script-tag-funktion, så den sletter alt.
Hvad er fejlen?? Det ser da rigtigt ud! ;)
Function StripScript(ByRef asHTML) Set regEx = New RegExp regEx.IgnoreCase = True regEx.Global = True regEx.Pattern = "(<script[^\¨]*\<\/script>)" StripScript = regEx.Replace(asHTML, "") Set regEx = Nothing End Function
Kørte restoren og fandt mit gamle script-tag-script frem, som jeg også kunne bruge form-tagget og nu kører det hele. Takker for hjælpen.
Function StripScript(ByRef asHTML) Set regEx = New RegExp regEx.IgnoreCase = True regEx.Global = True
'SKOD-KODNING asHTML = replace(asHTML, "</script>", "¨") regEx.Pattern = "(<script[^\¨]*\¨)" StripScript = regEx.Replace(asHTML, "") Set regEx = Nothing End Function
Function StripForm(ByRef asHTML) Set regEx = New RegExp regEx.IgnoreCase = True regEx.Global = True
'SKOD-KODNING asHTML = replace(asHTML, "</form>", "¨") regEx.Pattern = "(<form[^\¨]*\¨)" StripForm = regEx.Replace(asHTML, "") Set regEx = Nothing End Function
Jeg har prøvet at komme uden om min skod-kodning med replacen "replace(asHTML, "</form>", "¨")" men jeg kan ikke indbygge det direkte i sætningen - kan I?
Jeg har prøvet med: regEx.Pattern = "(<form[^</script>]*</script>)" og regEx.Pattern = "(<form[^\</script>]*\</script>)" og regEx.Pattern = "(<form[^\<\/script>]*\<\/script>)"
Med andre ord, det virker, dog er jeg kræsen og vil gerne indbygge "</script>" direkte i pattern, men selvom I ikke kan hjælp mig med det ;-) så gør den stadig det, som den skal.
Synes godt om
Ny brugerNybegynder
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.