Hola
El problemas me lo provoca los caracteres acentuados.
Me explico
Código HTML:
marca = Trim(Request.QueryString("clave")) 'recoge valor del form, el valor está codificado con escape
IF marca = "" then
%>
<%=unescape(rs.Fields("txt"))%>
<%
ELSE
array_cadena = Split(marca," ")
Function ResaltaParam(base)
strOriginal = unescape(rs.Fields("txt")) 'descodifico el campo BD
For i=0 to UBound(array_cadena)
paraBusq = "\b("&array_cadena(i)&")\b"
Dim objRegExp
Set objRegExp = new RegExp
With objRegExp
.Pattern = paraBusq
.IgnoreCase = True
.Global = True
End With
base = objRegExp.replace(strOriginal, "<span class=""BC"&i&""">$1</span>")
ResaltaParam = base
Set objRegExp = nothing
Next 'i
End Function
%>
<%=ResaltaParam(strOriginal)%>
<%
END IF
%>
Bien, todo funciona hasta que ha de encontrar la cadena "sí" recogida desde el form "s%ED".
En este caso se marca, por ejemplo, la cadena "así", aunque en la BD aparece como "as%ED".
Lo que me dice que el problema está en la expresión que estoy usando
\b("&array_cadena(i)&")\b
¿Qué he de hacer para que si busco en la BD la palabra "ón" me encuentre solamente "ón" y no "camión"?
Gracias