/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hjælp til at highlighte mine søgninger (me~
Fra : Joe


Dato : 29-07-10 05:47

Hej alle.

Jeg har kæmpet med et problem, hvor jeg gerne vil have highlighted
alle mine søgninger i en tekst. F.eks. hvis jeg har følgende tekst og
søgearray:

Original tekst = "En lille mand gik en tur"
Søgearray = "a", "mand", "lille mand"

Jeg har brugt hele dagen nu på at få det til at fungere, men lige så
snart det drejer sig om et dynamisk array, så giver det mig problemer,
hvis søgningen optræder flere gange i samme tekst. F.eks. hvis jeg
gerne vil have highligted med fed tekst, skal det gerne give ét af
følgende resultater (jeg ved ikke om HTML kode bliver fjernet, så jeg
ertsatter med bløde paranteser):

"En (b)lille mand(/b) gik en tur" (dette er den optimale)
"En (b)lille (b)m(b)a(/b)nd(/b)(/b) gik en tur" (denne er også ok)

Men det er umuligt for mig, at opnå dette resultat. Bemærk at
Replace() ikke fungere for mig, da den laver om på det originale
resultat. Den originale tekst skal forblive uforandre mht. store/små
karaktere - der skal kun highlightes.

Er der nogen der kan hjælpe mig?

 
 
Joe (29-07-2010)
Kommentar
Fra : Joe


Dato : 29-07-10 05:49

> Er der nogen der kan hjælpe mig?

Nu glemte jeg at skrive det, men det er lavet i helt alm. ASP - ikke
ASP.Net eller lignende (på en IIS6).

Ukendt (29-07-2010)
Kommentar
Fra : Ukendt


Dato : 29-07-10 14:06


"Joe" <joespam8@gmail.com> skrev i en meddelelse
news:f4a6ffe1-75fa-4107-92cc-47315f557609@r27g2000yqb.googlegroups.com...
> Er der nogen der kan hjælpe mig?

Nu glemte jeg at skrive det, men det er lavet i helt alm. ASP - ikke
ASP.Net eller lignende (på en IIS6).

>

Prøv denne:
http://www.google.dk/#hl=da&rlz=1W1MOOI_da&q=highlight+search+result+asp&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=4399bb72a52b0f36
Bjarne



Joe (29-07-2010)
Kommentar
Fra : Joe


Dato : 29-07-10 07:12

> Prøv denne:http://www.google.dk/#hl=da&rlz=1W1MOOI_da&q=highlight+search+result+...
> Bjarne

Jo, tak men nu har jeg forsøgt at finde noget på Google og jeg har
endda også set på de som du henviser til. Ingen af disse tager højde
for, at der kan være HTML kode i éns input (hvis man køre det igennem
en løkke af array) eller også fungere de ikke til dét jeg skal bruge
det til.

Joe (30-07-2010)
Kommentar
Fra : Joe


Dato : 30-07-10 00:11

> Er der nogen der kan hjælpe mig?

Jeg er kommet så langt, at jeg nu bruger denne funktion:

---
Function highlightStr (haystack, needleArray)

' Taken (and tweaked) from these two sites:
' http://forums.aspfree.com/asp-development-5/asp-highlight-keywords-295641.html
' http://www.eggheadcafe.com/forumarchives/scriptingVisualBasicscript/Jul2005/post23377133.asp

haystack = " " & haystack & " "
Set re = New RegExp
re.Pattern = "(" & needleArray & ")"
re.IgnoreCase = True
re.Global = True
highlightStr = re.Replace(haystack,"<span id='highlight'>$&</
span>")

End Function
---

Jeg har bare et problem med at søge på bløde paranteser, ( ) !? Så
kommer disse fejl:

Microsoft VBScript runtime error '800a139c'
Expected ')' in regular expression

og ...

Microsoft VBScript runtime error '800a1399'
Syntax error in regular expression

... når jeg søger efter henholdsvis ( og ).

Kan nogen hjælpe med at løse dette problem?

Mange tak.

Joe (30-07-2010)
Kommentar
Fra : Joe


Dato : 30-07-10 00:31

> .. når jeg søger efter henholdsvis ( og ).
>
> Kan nogen hjælpe med at løse dette problem?

[CUT]

Nå, jeg tænkte ikke lige over den simple løsning, at man selvfølgelig
bare skal escape søgestrengen og erstatte alle special karaktere med "\
(", "\." osv.

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste