webForumDet fria alternativet

RegExp

2 svar · 336 visningar · startad av budg1e

budg1eMedlem sedan apr. 2005116 inlägg
#1

Jag undrar hur man löser följande problem jag har.

Jag söker efter två olika saker med hjälp av regexp.

Nummer 1

set re = new regexp
re.ignorecase = true
re.Global = True
re.pattern = "<em>(.*?)</em>"
set m = re.execute(strHTML)
set re = nothing

och sedan efter följande

set re2 = new regexp
re2.ignorecase = true
re2.Global = True
re2.pattern = "<h2>(.*?)</h2>"
set m2 = re2.execute(strHTML)
set re2 = nothing

och skriver ut med följande

for each item in m
Response.Write m(x).submatches(0) & "<br>"
Response.Write m2(x).submatches(0) & "<br>"
x = x -- 1
next

Problemet jag stött på är när antalet träffar skiljer sig åt, om te x m.Count är 4 och m2.Count är 3 så hamnar inte rätt <h2>...</h2> under rätt <em>...</em>

voigtann1Medlem sedan juni 20019 519 inlägg
#2

Vad skall hända vid detta fel?
Om det finns mer em än vad det finns h2 element, vad skall hända?

Du kan kolla hur många träffar du har med .Count i m och i m2.

budg1eMedlem sedan apr. 2005116 inlägg
#3

Träffarna hör liksom ihop, om träffarna blir olika (händer ibland) så kommer inte rätt rubrik till rätt datum.

Exempel
Rubrik 1, datum 1 (RÄTT)
Rubrik 2, datum 2 (RÄTT)
Rubrik 3 (har inget datum), då hamnar datum 4 här (FEL)
Rubrik 4 datum 5 (och så blir det fel hela vägen) (FEL )

Hoppas ni förstår.

124 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)