Avatar billede madeindk Nybegynder
15. september 2006 - 21:12 Der er 13 kommentarer og
1 løsning

RegExp - kun hvis det ikke er de 3 sidste eller første tegn

Hej eksperter! Jeg har pt. følgende kode:

<%
Function removeTags(strText)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true
   
strText = Replace(strText,"<p>","")
strText = Replace(strText,"</p>","")

removeTags = strText
End Function
%>

Den fungerer også meget fint, men den skal kun fjerne <p> og </p> hvis det er de 3 eller 4 første tegn, ellers skal den erstatte dem med 2 x <br>

Er der en venlig sjæl der evt. kan hjælpe mig med det?
Avatar billede ellebaek Nybegynder
15. september 2006 - 21:51 #1
hmm...

hvad om du bare lavede en replace...

altså:
<%
function removeTags(strText)
if lcase(left(strText,3)) = "<p>" then
strText = right(strText, len(strText-3))
end if

if lcase(right(strText,4)) = "</p>" then
strText = left(strText, len(strText-4))
end if

strText = replace(strText, "<p>", "<br><br>")
strText = replace(strText, "</p>", "")
strText = replace(strText, "<P>", "<br><br>")
strText = replace(strText, "</P>", "")
removeTags = strText
end function

%>
Avatar billede nielle Nybegynder
16. september 2006 - 20:30 #2
madeindk> I din kode bruger du slet ikke den RegExp som du opretter.

Men ellers ser ellebaek's kode da ud til at løse din problemstilling?
Avatar billede madeindk Nybegynder
17. september 2006 - 18:22 #3
Din funktion virker ikke, den kommer med en fejl ligeså snart der indgår <p>.

Type mismatch: '[string: "<p>asfasa</p><p>glen"]'
Avatar billede madeindk Nybegynder
17. september 2006 - 18:23 #4
nielle > Nej, det har du ret i. Har ikke fået det fjernet, det er fordi jeg havde på et tidspunkt så man kunne skrive link :-)
Avatar billede ellebaek Nybegynder
17. september 2006 - 22:29 #5
laver den lige lidt om så..
det var vidst noget med case-sensitivity og sådan... prøv dennei stedet...
<%
function removeTags(strText)
if lcase(left(strText,3)) = "<p>" then
strText = right(strText, len(strText-3))
end if

if lcase(right(strText,4)) = "</p>" then
strText = left(strText, len(strText-4))
end if

strText = replace(strText, "<p>", "<br><br>", 1, -1, vbTextCompare)
strText = replace(strText, "</p>", "", 1, -1, vbTextCompare)
removeTags = strText
end function

%>
Avatar billede madeindk Nybegynder
18. september 2006 - 14:50 #6
Jeg har prøvet at kringle den sammen med denne her kode, hvorfor virker det nu ikke? Det er også en funktion og der bliver strText også defineret.

<%
Function replaceFunction(strText)

Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true

objRegExp.Pattern = "(http://(\w|\.|/|-|\?|=|&|;|~){1,}\w*)"
strText = objRegExp.Replace(strText,"<b><a href='$1' target='_blank'>$1</a></b>")
objRegExp.Pattern = "(www(\w|\.|/|-|\?|=|&|;|~){1,}\w*)"
strText = objRegExp.Replace(strText,"<b><a href='http://$1' target='_blank'>$1</a></b>")

strText = Replace(strText,":-)","<img height='15' width='15' src='/Pictures/Smileys/smiley.gif'>")
strText = Replace(strText,":)","<img height='15' width='15' src='/Pictures/Smileys/smiley.gif'>")
strText = Replace(strText,":D","<img height='15' width='15' src='/Pictures/Smileys/bigSmiley.gif'>")
strText = Replace(strText,":-D","<img height='15' width='15' src='/Pictures/Smileys/bigSmiley.gif'>")
strText = Replace(strText,";-)","<img height='15' width='15' src='/Pictures/Smileys/blinkSmiley.gif'>")
strText = Replace(strText,";)","<img height='15' width='15' src='/Pictures/Smileys/blinkSmiley.gif'>")
strText = Replace(strText,":-P","<img height='15' width='15' src='/Pictures/Smileys/tongue.gif'>")
strText = Replace(strText,":P","<img height='15' width='15' src='/Pictures/Smileys/tongue.gif'>")
strText = Replace(strText,":-p","<img height='15' width='15' src='/Pictures/Smileys/tongue.gif'>")
strText = Replace(strText,":p","<img height='15' width='15' src='/Pictures/Smileys/tongue.gif'>")
strText = Replace(strText,":-(","<img height='15' width='15' src='/Pictures/Smileys/cry.gif'>")
strText = Replace(strText,":(","<img height='15' width='15' src='/Pictures/Smileys/cry.gif'>")
strText = Replace(strText,":-O","<img height='15' width='15' src='/Pictures/Smileys/chok.gif'>")
strText = Replace(strText,":O","<img height='15' width='15' src='/Pictures/Smileys/chok.gif'>")
strText = Replace(strText,":-o","<img height='15' width='15' src='/Pictures/Smileys/chok.gif'>")
strText = Replace(strText,":o","<img height='15' width='15' src='/Pictures/Smileys/chok.gif'>")

if lcase(left(strText,3)) = "<p>" then
strText = right(strText, len(strText-3))
end if

if lcase(right(strText,4)) = "</p>" then
strText = left(strText, len(strText-4))
end if

strText = replace(strText, "<p>", "<br><br>", 1, -1, vbTextCompare)
strText = replace(strText, "</p>", "", 1, -1, vbTextCompare)

replaceFunction = strText
End Function
%>
Avatar billede nielle Nybegynder
20. september 2006 - 18:41 #7
Denne:

if lcase(right(strText,4)) = "</p>" then
strText = left(strText, len(strText-4))
end if

- skal laves om til:

if lcase(left(strText,4)) = "</p>" then
strText = right(strText, len(strText-4))
end if

- hvis det skal stemme helt overens med den måde spørgsmålet formuleres.

Den første version fjerner </p> hvis den findes i enden af en tekstlinje, hvorimod den anden fjerner det hvis det er i starten af linjen.
Avatar billede nielle Nybegynder
27. september 2006 - 20:12 #8
Har du fået kigget på det?
Avatar billede ellebaek Nybegynder
27. september 2006 - 22:47 #9
nielle-> ja, self :-)

Forstod det bare som at det skulle være først og sidst.

altså <p> lalalalallalalalallfmndskjnfd ksf
ds
fds
gf
d
g
fdsgfd
</p>
så skulle de fjernes :-)
Avatar billede madeindk Nybegynder
27. september 2006 - 22:49 #10
Har desværre ikke fået kiggede på det endnu, da serveren jeg skal teste det på er nede pt. Men jeg vender naturligvis tilbage når jeg har fået sat det ind :-)
Avatar billede nielle Nybegynder
16. oktober 2006 - 17:44 #11
Hmmm?
Avatar billede madeindk Nybegynder
17. oktober 2006 - 11:38 #12
Ellebaek og nielle, smid et svar :-)
Avatar billede nielle Nybegynder
17. oktober 2006 - 16:20 #13
Betyder det at du har fået det til at virke?
Avatar billede madeindk Nybegynder
17. oktober 2006 - 16:54 #14
Jeg fandt på noget andet ;-)
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