Avatar billede barklund Nybegynder
25. februar 2003 - 23:15 Der er 1 kommentar og
2 løsninger

Preg hovedbrud

Jeg har et problem, som jeg ikke kan løse:

Jeg har en streng som for eksempel:

"Her er noget tekst

[example]Et eksempel
på flere linier[/example]

Noget mere tekst

Sidste linie"

Det jeg så skal er at konvertere ovenstående til html-strengen:

"<p>Her er noget tekst</p><pre class=\"code\">Et eksempel
På flere linier</p><p>Noget mere tekst</p><p>Sidste linie</p>";

Altså:

Al tekst indenfor en [example].*[/example] skal istedet pakkes ind i et andet tag - samt linieskift skal bevares som værende linieskift (\n)!

Al anden tekst skal pakkes ind i <p></p>-tags brudt over linieskift.

Kan nogen digte en algoritme, der kan lave denne transformation? Jeg kan simpelthen ikke finde ud af det!

Mit problem er blandt andet, hvordan jeg matcher [example].*[/example], der samme tekst-stykke kan indeholder flere eksempler...

På forhånd tak

/Barklund
Avatar billede barklund Nybegynder
25. februar 2003 - 23:16 #1
Hov... resultatet af transformationen skal selvfølgelig være:

"<p>Her er noget tekst</p><pre class=\"code\">Et eksempel
På flere linier</pre><p>Noget mere tekst</p><p>Sidste linie</p>";
Avatar billede jespernaur Nybegynder
25. februar 2003 - 23:47 #2
Dit sidstnævnte problem kunne måske løses ved at du skrev

    [example].*?[/example]

hvor ? får * til at være 'ikke-grådig', således at den stopper ved første forekomst af [/example] og ikke sidste.
Avatar billede barklund Nybegynder
28. februar 2003 - 10:20 #3
Hmm... Det ser ikke ud til, at nogen kan hjælpe mig...

Har dog fået en tip fra anden side om, at den korrekte måde at lave en ikke-grådig søgning er ved at bruge modifier "U"... Men du får lidt for dit tip alligevel :o)

/Barklund
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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