Wörter mit Replace ändern - einzeln kein Prob, aber dann..
Tom
- asp.net
Hallo Forumer,
ein Besucher auf meiner Seite kann in eine Suchzeile mehrere Suchbegriffe eingeben. Das Ergebnis kommt aus einer DB, in der "Schlagwörter" stehen, die dann bei Übereinstimmung mit den Suchwörtern den Rest aus der Tabelle auf einer ASP Seite ausgeben.
Zudem wird ein Suchbegriff, wenn er in der DB vorkommt, im Ergebnis farblich durch Replace verändert, so daß der Besucher sieht, wie das Ergebnis aus seiner Suchanfrage zustande kommt. Das Suchwort wird in einem Begleitsatz hervorgehoben. Es werden nicht nur ganze Wörter verändert, sondern auch Wortteile, die übereinstimmen. Bis hier alles OK.
Wenn der Besucher aber nun mehrere Suchbegriffe eingibt, replaced mir der Befehl auch nur diese Suchzeichenfolge, die der Besucher als Suchbegriff eingegeben hat. Die einzelnen Suchbegriffe werden nicht replaced, obwohl sie als Wort oder Wortteil vorkommen.
Wie ist es möglich, diese Begriffe einzeln zu behandel, um sie dann zu verändern?
Die Suchbegriffe kommen (natürlich) aus einem Formular.
MfG
Tom
Hallo Tom,
ich hoffe ich verstehe dich richtig! Du hast einen Eingabestring z.B. mit ';' oder ' ' getrennt.
Diesen Suchstring kannst du einfach aufteilen und die einzelnen Teilstrings jeweils für sich behandeln:
for each Teilstring in split(Suchstring, ";")
response.write(Teilstring)
next
Hoffe das hilft etwas...
Chris
Hallo Chris,
for each Teilstring in split(Suchstring, ";")
response.write(Teilstring)
next
Das wars, was ich suchte. Vielen Dank dafür !!
Nun muß ich es "nur" noch hinbiegen, daß alle gesuchten Strings geändert werden. Im Moment wird nur das letzte Suchwort geändert.
Vielleicht steh ich im Moment auch aufn Schlauch..;-)
Ich versuche folgendes:
for each Teilstring in split(request("Suchwoerter"), " ")
Text2 = replace(rs.Fields("Suchwoerter"), Teilstring, "<font color=""#0000FF""><b>" & Teilstring & "</b></font>")
next
und später
response.write(Text2)
Wahrscheinlich habe ich die falsche Anordnung des Codes
Tom
Vielleicht steh ich im Moment auch aufn Schlauch..;-)
Schlauch hat sich gelöst..;-) Vielen Dank noch einmal.
Tom