webForumDet fria alternativet

regexp utan slut (?!)

ASP

1 svar · 162 visningar · startad av peppar

Medlem sedan dec. 2001873 inlägg
Frågan#1

Sitter och pillar lite med något som så småning om skall bli en parser för ett artikelpubliseringssystem.

Jag undrar hur man regexp´ar en radbrytning. Ett exempel:

Jag har en sträng som börjar med ett kontrolltecken h1. och sedan en textsnutt. som alltså ser ut enligt förlande

h1. En <h1> formaterad rubrik

Hur skall jag göra med mig rexexp om jag vill att den skall sätta </h1> taggen först efter två radbrytningar som det blir i ett textfält i ett formulär, nytt stykce med andra ord.. Om det endast är en radbrytning så bryter den inte... Så här ser regexpen ut nu.

strText = ReplaceTags("\h1.((.|\s)*)\#h1.", "<b>$1</b>", strText)

Där ju då #h1. avslutar nu.

Medlem sedan dec. 2001873 inlägg
#2

Enklaste är ju att match en carriage return:

strText = ReplaceTags("\h1.((.|\s)*)[b]\r[/b]", "<b>$1</b>", strText)
269 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)