Ulf Knoblich: Quelltextposition einer Selektion

Hallo,

mein Problem ist folgendes:
Wir bauen ein Informationsextraktionssystem und dazu soll der Nutzer Beispiele
mit der Maus markieren koennen. Das Problem ist jetzt, dass wir genau
herausfinden muessen, wo der markierte Text im Dokument steht. Es kann ja
vorkommen, dass in dem Dokument 3 mal der String "Hallo" vorkommt, und wenn
dann "Hallo" markiert wird, ist unklar, welcher markiert wurde. Gibt's dafuer
irgendeine Moeglichkeit fuer IE und NN? Ich kann JavaScript und/oder Java
einsetzen, zur not auch plug-ins schreiben, es sollte aber moeglichst
Plattformunabhaengig sein.

Gruss,
Ulf

  1. Hallo Ulf,

    Was du da vor hast ist sehr tricky. Du willst mit der Maus HTML-Text
    selektieren und dann den Index dieses Teilstrings im Gesamttext erfahren.

    Idee: Die Wörter "unsichtbar" Zeichen markieren, sodaß kein selektierter
    Text wirklich doppelt vorkommen kann, weil sich die verschiedenen Hallos
    in eben dieser Markierung unterscheiden und lokalisieren lassen.

    Es gibt viele unbelegte codes in den Iso-tabellen, wenn du glück hast
    werden sie bei der anzeige im Browser ohne Fehlermeldung ignoriert, lassen
    sich dann aber aus dem selektionsstring extrahieren.

    Die andere Frage ist wie du die Markierung in die Wörter reinbekommst:
    Generierst du die Pages selbst, kein Problem, handelt es sich um fremde
    online-pages dann schau dir doch mal bei http://www.bookmarklets.com/tools/design/index.phtml
    das "find and replace in source" bookmarklet fuer NN an, über ne JS-Java
    Schnittstelle werden live Documenteninhalte ersetzt. Fuer den IE koenntest
    du auch ueber document.all an den text rankommen.

    Ich hab keine Ahnung obs funktioniert, der ansatz ist sehr gewagt,
    aber du klangst nicht sehr wählerisch ;)

    Viel Glueck
    Rolf

  2. Kleiner Nachtrag,

    Euer Ansatz mit der Selection zu arbeiten erscheint mir doch sehr fragwürdig.
    Wenn wirklich fast jedes Wort hier in Frage kommt dann macht eben links
    aus ihnen und stellt die CSS so ein, daß es wie normaler Text aussieht.Dann
    braucht der user sich auch keinen Stress damit zu machen wortanfang und
    ende genau zu dragen, sondern bloss klicken. Natürlich würde ich noch ein
    Ausnahmewörterbuch mit den häufigsten deutschen Wörtern (und,die,der,...)
    anlegen, um nicht aus jedem Muell nen Link zu generieren.

    Was meinste?

    Gruß Rolf