21. december 2005 - 15:20
Der er
2 kommentarer og
1 løsning
Søgning i ASP
Hey kodere!
Jeg leger lidt med en søge funktion på mit site, og jeg har rendt panden imod en mur.
Min søgefunktion virker fortringligt, bortset fra hvis du skal søge på ÆØÅ. Jeg laver en "Felt LIKE '%ord%'" søgning, og med alle bogstaver findes resultatet udanset om det er stort en småt, undtagen ÆØÅ.
Jeg har fundet ud af at UCase() ikke virker på ÆØÅ, og Replace() brokker sig også. What to do?
Spørgsmålet er: Hvordan ændrer jeg "ølstykke" til "Ølstykke"?
21. december 2005 - 17:21
#1
Function startstort(text)
temptext = ""
if Len(text) >= 2 then
temptext = UCase(Left(text,1)) & LCase(Right(text,Len(text)-1))
else
temptext = text
end if
startstort = temptext
End Function
Response.write startstort("ølstykke")
Prøv denne
22. december 2005 - 09:27
#2
Den funktion brugte jeg nemlig også, men på min server (2003 engelsk) ville den ikke løfte til UCase hvis det er ÆØÅ. Jeg skrev en funktion igår som løser problemet:
Function MarkUp(sQuery,sTxt)
If Len(sQuery) > 0 Then
sQuery = Replace(sQuery,"&search=","")
If InStr(sQuery,"+") Then
aQuery = Split(sQuery,"+")
Else
aQuery = Split(sQuery," ")
End If
For i = 0 To UBound(aQuery)
sTmp = Mid(aQuery(i),1,6)
If sTmp = "ø" Then
sTmp = Replace(sTmp,"ø","Ø") & Mid(aQuery(i),7)
ElseIf sTmp = "å" Then
sTmp = Replace(sTmp,"å","Å") & Mid(aQuery(i),7)
ElseIf sTmp = "æ" Then
sTmp = Replace(sTmp,"æ","Æ") & Mid(aQuery(i),7)
Else
sTmp = UCase(Left(aQuery(i),1)) & Mid(aQuery(i),2)
End If
Next
RaiseFirst = sTmp
Else
RaiseFirst = sTmp
End If
End Function