Avatar billede m-koldsgaard Nybegynder
13. februar 2004 - 00:06 Der er 7 kommentarer og
1 løsning

Rydde op i html

Hej

Nogen der lige har (eller kan lave) et reg.exp.-script som kan rydde op i fx en <p>... Den skal kun gemme "align"...

fx:
<p noget="noget" align=center hej>Tekst...</p>
Skal blive til:
<p align=center>Tekst...</p>
Avatar billede ellebaek Nybegynder
13. februar 2004 - 00:31 #1
<%
Function fnLowerCaseHTML(strHTML)
    Dim objRegExp, strOutput
    Set objRegExp = New Regexp
    objRegExp.IgnoreCase = True
    objRegExp.Global = True
    objRegExp.Pattern = "<p (.*?) (align=)(.*?) (.*?)>"
    strOutput = objRegExp.Replace(strHTML,"<p $2$3>")
    fnLowerCaseHTML = strOutput
    Set objRegExp = Nothing
End Function
%>

Jeg har testet dette, og det virker i hvert fald for mig..
Avatar billede ellebaek Nybegynder
13. februar 2004 - 00:32 #2
og navnet er selvfølgelig rimelig misvisende ;-)
Men det kan du selv rette.
Avatar billede m-koldsgaard Nybegynder
13. februar 2004 - 11:47 #3
Hmm... Jeg bruger PHP, men altså selve reg.exp. pattern'en burde jo være den samme, men jeg kan ikke få det til at virke i mit script...
Avatar billede m-koldsgaard Nybegynder
13. februar 2004 - 11:54 #4
Jeg har selv lavet det her:
$Indhold = ereg_replace("<p([^a]*)(align\=(left|right|center))*([^>]*)>","<p \\2>",$Indhold);

Men det virker kun hvis det som står foran 'align' ikke indholder 'a'... Og jeg kan ikke negate (^) mere end det ene bogstav...
Avatar billede roenving Novice
14. februar 2004 - 01:57 #5
Hvorfor tager du ikke det pattern næsten direkte ?-)

$Indhold = ereg_replace("<p (.*?)(align=(left|right|center))(.*?)>","<p \\2>",$Indhold);
Avatar billede m-koldsgaard Nybegynder
14. februar 2004 - 10:06 #6
Warning: ereg_replace(): REG_BADRPT in /web/www.pr-creation.net/www/test.php on line 25
Avatar billede m-koldsgaard Nybegynder
14. februar 2004 - 10:23 #7
Hmm... Det virker næsten hvis jeg laver det som 'preg':
$Indhold = preg_replace("/<p(.*?)( align=(left|right|center))(.*?)>/","<p\\2>",$Indhold);

Men problemet er så hvis hvis der ikke er noget "align=(left|right|center)" i p'et... fx: <p noget="mærkeligtKode"> det bliver der ikke ryddet op i...
Avatar billede m-koldsgaard Nybegynder
14. februar 2004 - 22:29 #8
Fik selv fixet noget sammen, som gør at der altid er et 'align' i et 'p'...
Så nu virker 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