webForumDet fria alternativet

RegExp på flera rader

ASP

0 svar · 146 visningar · startad av mozilla

Medlem sedan juli 20011 084 inlägg
Frågan#1

Jag jobbar på ett forum och som vanligt så vill jag erbjuda besökarna forumkod. Och bland annat citering. Jag gjorde ett regexp som såg ut så här

objRegExp.Pattern = "\[citat\]([^\]]+)\[/citat\]"
str = objRegExp.Replace(str,"<blockquote><font style=""font-size:9px"">citat:</font><hr><font style=""font-size:10px"">$1</font><hr></blockquote>")

Och det fungerade bra fram tills dess att någon skulle citera ett citat. Då fungerade det inte(båda citaten blev inte rätt)

Då sökte jag här på webforum och hittade en lösning

objRegExp.Pattern = "\[citat\]"
str = objRegExp.Replace(str,"<blockquote><font style=""font-size:9px"">citat:</font><hr><font style=""font-size:10px"">")
	
objRegExp.Pattern = "\[/citat\]"
str = objRegExp.Replace(str,"</font><hr /></blockquote>")

Som ni då ser så byter den ut starten och slutet, och då kan någon starta ett citat men inte avsluta det, och det blir fel. Vad är den ultimatalösningen på problemet? Är det att köra på modell 2 och hoppas på att de inte glömmer att avsluta?

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)