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?

265 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
133 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)