H Hägglund Medlem sedan juni 2001 37 inlägg Trådstart 23 nov. 2001 09:41 #1 Halloj!!
Fredag, och lön, kan livet bli mer underbart?
Jag har ett litet problem, eller en fråga rättare sagt.
Jag har en databas som innehåller bland annat ett memo-fält.
Jag vill att allt som står innanför paranteser skall skrivas ut inom <li> taggar.
Har hört mig för och fått olika uppslag, använda SPLIT, använda REPLACE. Jag får dock inte ihop logiken... Kan någon hjälpa mig?
Brimba Medlem sedan dec. 1999 5 874 inlägg <%
Function liBreak(cTxt)
Dim objRegExp
Set objRegExp = New RegExp
objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern = "\\((.\*?)\\)"
liBreak = objRegExp.Replace(cTxt,"\<li\>$1\</li\>")
Set objRegExp = Nothing
End Function
response.write liBreak("nu liar (jag) en massa (lull-lull)")
%>
Är det så du menar?
Brimba Medlem sedan dec. 1999 5 874 inlägg resultatet i "visa källa", blir:
nu liar <li>jag</li> en massa <li>lull-lull</li>
H Hägglund Medlem sedan juni 2001 37 inlägg Ja, kanske nått åt det hållet fast
response.write liBreak("nu liar (jag) en massa (lull-lull)")
ska vara
response.write liBreak rs("body")
Förstår du hur jag menar?
Brimba Medlem sedan dec. 1999 5 874 inlägg response.write liBreak(rs("body"))
H Hägglund Medlem sedan juni 2001 37 inlägg Argh!
Detta verkar inte fungera, jag sitter inte på en IIS server, utan en ChiliASP server... Nått bra förslag på hur man skriver regular expression för ChiliASP?
J jorgen Medlem sedan feb. 2001 2 412 inlägg Hej,
Eftersom Reg exp kom i version 5 och chilliASP bara är uppe i 4.x någonting så kan du inte använda reg exp.
Du får använda enbart VB-funktionen replace() istället. Något mer omständigt och bakvänt men det går.
mvh Jörgen
H Hägglund Medlem sedan juni 2001 37 inlägg Oki, då var vi där...jag har bläddrat igenom mina referensverk, men jag kan inte hitta ett bra syntax på detta, och eftersom VB inte är mitt andra språk så skulle jag kunna behöva lite hjälp... :-)
My god, jag är verkligen en "pain"...
J jorgen Medlem sedan feb. 2001 2 412 inlägg Hej, vet du i förväg vad som finns inom parantesen eller det kan variera?
Du kan ju kolla på funktionerna:
Instr()
Left()
Mid()
Right()
Replace()
mvh Jörgen
H Hägglund Medlem sedan juni 2001 37 inlägg Halloj!
Mjae, det kan ju variera...skulle detta funka?
= Replace(rs("body"), "[l", "<li>")
Body i det här fallet är ett memo fält som sagt, det kan innehålla en mening eller en hel skoluppsats...
Så, jag vill att om man skriver [l Detta är en bullet list l] så skall det vara samma sak som att i HTML skriva <li> Detta är en bullet list </li>
Kan man kombinera flera replace så att man får med slut taggen också?
Jag fattar inte *dum nybörjare*
L LarsG Medlem sedan dec. 2000 12 464 inlägg <%
str = rs("body")
str = Replace(str, "[l", "<li>")
str = Replace(str, "l]", "</li>")
response.write str
%>
H Hägglund Medlem sedan juni 2001 37 inlägg Iiiiiihhhaaaaaaaaaaaaaaa!!!!
Tackar, bockar och kysser dina fötter!!
J jorgen Medlem sedan feb. 2001 2 412 inlägg Hej, eller varför inte göra en funktion av det:
Function BytaUt(str)
str = Replace(str, "[l", "<li>")
str = Replace(str, "l]", "</li>")
BytaUt = str
End Function
response.write "<p>"& BytaUt(rs("body")) &"</p>"
Otestat, men borde funka
mvh Jörgen
H Hägglund Medlem sedan juni 2001 37 inlägg Kolla!
Det funkade också ;-) Fast nu får vi ge oss, för annars kan jag inte bestämma mig :-)
Nu ser det riktigt prydligt ut *glad*