webForumDet fria alternativet
Logga in / Bli medlem

Sökproblem versaler/gemener

ASP

4 svar · 329 visningar · startad av J.N.

Medlem sedan apr. 20031 660 inlägg
Trådstart#1

HEJ!

Jag har en sökfunktion på vanligt sätt till Access:
SELECT * FROM report WHERE content LIKE '%" & word & "%'

Söker jag på 'JohnNy' hittas alla texter med 'johnny' oavsett stavningssätt.

Hur får man LIKE att matcha exakt?

Medlem sedan dec. 200012 464 inlägg
#2

Tror nog inte att det går att få like att ändra beteende.

SELECT * FROM report WHERE instr(content ,'" & word & "',1)

kanske. Om inte intsr fungerar direkt i SQL-satsen så är ett alternativ att göa en extra jämförelse i ditt skript

Medlem sedan apr. 20031 660 inlägg
#3

HEJ!

Det fungerade inte, som du trodde.

Att ändra LIKE:s beteende var jag inte direkt ute efter, utan att få reda på hur man gör istället.
Man kan ju tycka det är konstigt att LIKE inte skiljer på tecken som default.
Testade direkt i Access, och det fungerar likadant där.

Att skriva
SQL = "SELECT * FROM report WHERE content='%" & word & "%'"
är inget alternativ, eftersom texterna innehåller mer än ett ord, detta är ju helt och endast exakt.

Vi går över till ursprungsproblemet:
Hur markerar jag det sökta ordet oavsett stavning?
Replace(Rs("content"),word,"<b>"&word&"</b>")

Sätter jag LCase(RS("content")) skrivs ju texten ut i endast gemener, och det vill jag ju inte!

Medlem sedan dec. 200012 464 inlägg
#4
Replace(Rs("content"),word,"<b>"&word&"</b>",,1)
Medlem sedan apr. 20031 660 inlägg
#5

HEJ!

Om man läser dokumentationen för Replace, http://www.devguru.com/Technologies/vbscript/quickref/replace.html skulle det fungera, men det gör det inte.

Det som markeras är det exakta, men ordet hittas, dvs posten visas?

Varför det inte gör det kan jag inte förstå!

Jag testade med DevGuru-exemplet, 'BluE' etc, och då var det inga problem.

Replace(Left(Rs("content"),500),word,"<b>"&word&"</b>,1,10,1")

OBS! 10 måste stå (antal Replace) annars fungerar det inte.

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