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 %>
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